在ie9中上传得到js错误:SCRIPT5007:期望对象

Uploadify in ie9 getting js error : SCRIPT5007: Object expected

本文关键字:错误 SCRIPT5007 期望 对象 js ie9      更新时间:2023-09-26

我正在尝试在div上绑定上传。
当我点击上传按钮时它显示错误,如SCRIPT5007: Object expected.

为演示检查下面的链接,在ie9中拖动div时产生错误

<script type="text/javascript" src="http://code.jquery.com/jquery-1.7.2.js"></script>
<script type="text/javascript" src="http://ajax.aspnetcdn.com/ajax/jquery.ui/1.8.20/jquery-ui.js"></script>
<script type="text/javascript" src="http://www.uploadify.com/wp-content/themes/uploadify/js/jquery.uploadify.min.js"></script>
身体

<div class="container" id="container">
    <div id="uploadify-item"></div>
    This container is not draggable in IE9 but it works in Chrome and FF. Why not?
</div>

js

$('#uploadify-item').uploadify({
    'swf'      : 'http://www.uploadify.com/uploadify/uploadify.swf',
    'uploader' : 'http://www.uploadify.com/uploadify/uploadify.php'
});
$("#container").draggable();

参考:http://jsfiddle.net/axzdR/19/

IE9似乎有一个bug与SWFUpload嵌入,因此,如果你试图在元素上调用"getAttribute/removeAttribute/setAttribute"引发"object expected"错误。我发现清理()函数中删除所有js函数,包括从对象DOM中"getAttribute/removeAttribute/setAttribute"IE9。

修复此问题

在SWFUpload.prototype.cleanUp

改变:

if (typeof (movieElement[key]) === "function")

:

if (typeof (movieElement[key]) === "function" && key[0] <= 'Z') // Remove only Flash functions (starts with capital letters). 

补丁版本的上传保存在此位置

http://www.dariowiz.com/scripts/jquery.uploadify3.1Fixed.js

问候。

尝试使用最新的jQuery(在IE9中容器是可拖动的,并且"Object expected"错误消失)

 <script type="text/javascript"
 src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
 <script type="text/javascript"
 src="//ajax.googleapis.com/ajax/libs/jqueryui/1.10.2/jquery-ui.min.js"></script>

确保你已经安装了IE的Flash播放器(它是单独安装的)可以从这里下载http://get.adobe.com/flashplayer/otherversions/

但是即使卸载演示也不能在我的IE9中工作(我可以在选择文件按钮中点击一分钟而没有结果,突然莫名其妙地开始工作并打开选择文件对话框)

您可以在这里找到这个问题的最终解决方案>> https://groups.google.com/forum/?fromgroups=#!主题/swfupload/57 ysk2jolbe

上传源似乎有问题,与ie9中的jquery UI冲突。特别是在swfupload实用程序中。为了修复它,你需要做一个小hack,这里似乎有详细的步骤:http://www.uploadify.com/forum/#/discussion/comment/19212

对不起,如果不设置整个测试环境,我无法验证这一点。这些东西不能放在JSFiddle中。祝你好运,如果你成功了请告诉我。