微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

swfupload不再在IE下运行了

http://demo.swfupload.org/v250beta2/simpledemo/index.php似乎不再适用于IE.有没有解决这个问题?

我得到一个红十字,而’按钮’不可点击.

我正在运行IE 8.

解决方法

我可以在Windows 7上运行IE9重现问题,但只能在虚拟机上运行.无论如何,我能够通过修补swfupload.js(v2.2.0)来应用quick’n’dirty修复问题,在230行左右,感谢 this post.

SWFUpload.prototype.getFlashHTML = function () {
    // Flash Satay object Syntax: http://www.alistapart.com/articles/flashsatay

    // ADD THESE LInes --> 
    var iefix = '';
    if(navigator.userAgent.search(/MSIE/) > -1){
        iefix = 'classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"';
    }

    // MODIFY THIS LINE: (add ' + iefix + ')
    return ['<object ' + iefix + ' id="',this.movieName,'" type="application/x-shockwave-flash" data="',this.settings.flash_url,'" width="',this.settings.button_width,'" height="',this.settings.button_height,'" class="swfupload">','<param name="wmode" value="',this.settings.button_window_mode,'" />',...

似乎非常类似的修复可能对2.5.0有帮助.

编辑:似乎这个修复程序对于某些已启用IE加载项称为“VMware Adob​​e Flash Optimizer”的VM来说还不够.出于某种原因,优化器将Flash影片转换为白色框(如果您知道单击它,则实际上是可点击的).

坏消息是我发现无法在我的代码中检测或禁用优化器加载项的存在.所以我无法确定用户是实际看到按钮还是仅看到白框.我找不到好的解决方法,只添加了非Flash上​​传表单的后备链接.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐