加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

SWFupload在IE9中选择文件按钮无法点击bug解决方法

发布时间:2020-12-15 17:22:34 所属栏目:百科 来源:网络整理
导读:问题 IE9 下,使 用swfupload时出现时 选择文件的按钮无法点击 ,在其他浏览器,例如Firefox、chrome都不会出现 出现这种情况。 在ie9下面swf打不开,ie9下面debug开启,显示请求swfupload.swf的时候请求被挂起了,点击上传没反映,等了很久大概有5分钟吧,

问题

IE9下,使用swfupload时出现时选择文件的按钮无法点击,在其他浏览器,例如Firefox、chrome都不会出现出现这种情况。

在ie9下面swf打不开,ie9下面debug开启,显示请求swfupload.swf的时候请求被挂起了,点击上传没反映,等了很久大概有5分钟吧,挂起请求请求200,一下子出来了三个请求flash的,这时候点击上传就正常了。

搞了半天,在网上找到这篇文章,原来是ie9在作祟,可能与ie9对active空间的要求有关吧,需要注册一个classid。

郁闷,搞了两个小时才查出来。

转自:http://www.cnblogs.com/blackice/archive/2013/02/16/2913087.html


解决方法

修改swfupload.js中的getFlahHTML方法,给object加上一个classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"属性,

如下:

SWFUpload.prototype.getFlashHTML = function () {
	// Flash Satay object syntax: http://www.alistapart.com/articles/flashsatay
	var obj = ['<object 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">'].join('');
	if(navigator.userAgent.indexOf("MSIE") > 0){
		obj = ['<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" id="','" class="swfupload">'].join("");
	}
	return 		[obj,'<param name="wmode" value="',this.settings.button_window_mode,'" />','<param name="movie" value="','<param name="quality" value="high" />','<param name="menu" value="false" />','<param name="allowScriptAccess" value="always" />','<param name="flashvars" value="' + this.getFlashVars() + '" />','</object>'].join("");
};


[参考]:

Bug详细信息:https://code.google.com/p/swfupload/issues/detail?id=348

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读