zoukankan      html  css  js  c++  java
  • Web Uploader在低版本IE下无法显示Flash的一种情况

    用户反馈在IE 8下无法正常显示Web Uploader控件,并已安装了Flash插件。调试发现在内部抛出了Runtime Error的错误,关键代码如下:

    Runtime.create = function( opts, orders ) {
        var type, runtime;
        
        orders = orders || Runtime.orders;
        $.each( orders.split( /s*,s*/g ), function() {
            if ( factories[ this ] ) {
                type = this;
                return false;
            }
        });
        
        type = type || getFirstKey( factories );
        
        if ( !type ) {
            throw new Error('Runtime Error');
        }
        
        runtime = new factories[ type ]( opts );
        return runtime;
    };

    可以发现是对应的FlashRuntime并未找到。查看源代码发现在注册FlashRuntime时候有一个版本判断,如果没有符合最低版本要求则不注册。查看用户安装的Flash版本确实低于该要求。

    FlashRuntime.register = function( name, component ) {
        component = components[ name ] = Base.inherits( CompBase, $.extend({
        
            // @todo fix this later
            flashExec: function() {
                var owner = this.owner,
                    runtime = this.getRuntime();
        
                return runtime.flashExec.apply( owner, arguments );
            }
        }, component ) );
        
        return component;
    };
        
    if ( getFlashVersion() >= 11.4 ) {
        Runtime.addRuntime( type, FlashRuntime );
    }
  • 相关阅读:
    Java Nashorn--Part 4
    Java Nashorn--Part 3
    Java Nashorn--Part 2
    Java Nashorn--Part 1
    Java 异步 IO
    代码天天写,快乐天天有!
    比迷路更可怕的,是对读书的迷失。
    《寄生兽》观后感
    浅谈生活
    8月份的尾巴
  • 原文地址:https://www.cnblogs.com/junchu25/p/7275009.html
Copyright © 2011-2022 走看看