我只在Internet Explorer 9中收到此错误。IE1、IE2、IE3、IE4、IE7、IE8和IE10可以很好地运行脚本。这是一个褪色图像的横幅,一个接一个地堆叠在一起,逐渐消失。
当您试图在IE9上加载页面时,它会抛出一个错误。这个错误发生在prototype.js中,我得到了这个错误。
SCRIPT5007:无法获取未定义或null引用的属性"replace"prototype.js,第334行字符24
为什么IE9中会出现这种情况,而早期版本却没有??
我收到了同样的错误消息,因为我对XML标记使用了.html()操作。
var myXML = '<someTag att1=""><cell></cell></someTag>' ;
$(myXML).html(); // which was giving the error msg.
// Instead use the below option
$(myXML).children() ;// instead this work with IE
注意:上面的例子并不是我实际尝试的,它只是给出了问题的一个表示。
您应该尝试使用X-UA-Compatible标记。许多库不能很好地与IE9配合使用,需要在IE8兼容模式下运行。
<meta http-equiv="X-UA-Compatible" content="IE=8" />
经过几个小时的拔毛和磨牙,我已经解决了这个问题。
我并没有意识到脚本依赖于原型。
我正在更新原型,同时留下了一个过时版本的脚本效果链接,这引发了许多错误。
在更新到scriptaculous 1.9,然后将原型更新到1.7之后,一切都很好,没有出现任何错误。
感谢所有帮助过我的人,我感谢所有的评论!
大多数时候,这个错误的发生是因为jquery中解析XML的.html()操作。删除此项并改用.text()将解决问题。