“对象不支持此属性或方法”显示 jQuery.noconflict()
我的 jsp 以相同的顺序加载 Mootools、Jquery,然后加载我的 Javascript 文件。 在 IE8 中,第一次加载时,它会抛出错误“对象不支持此属性或方法”,并且 JS 根本不起作用。
我在 JSP 中加载文件为:
new Asset.javascript('/js/jquery-1.6.4.min.js', {id: 'jQuery'});
new Asset.javascript('/js/MyScript.js', {id: 'CWScript'});
MyScript.js 看起来为:
jQuery.noConflict();
jQuery(document).ready(function(){
...
它在 FF、IE6、Chrome 和 Safari 中工作正常,但在 IE8 中的第 1 行字符 1 处中断
My jsp loads Mootools, Jquery and then my Javascript file in the same order.
In IE8, on first load, it throws error "Object doesn't support this property or method" and the JS doesn't work at all.
I load the files in JSP as:
new Asset.javascript('/js/jquery-1.6.4.min.js', {id: 'jQuery'});
new Asset.javascript('/js/MyScript.js', {id: 'CWScript'});
The MyScript.js looks as:
jQuery.noConflict();
jQuery(document).ready(function(){
...
It works fine in FF, IE6, Chrome and Safari but breaks at Line 1 Char 1 in IE8
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我不了解 Mootools,但对我来说,它看起来像是简单的竞争条件(假设资产是异步加载的,并且没有任何指定的顺序执行)。尝试在 jQuery 加载资源的
onLoad
回调中加载MyScript.js
。并且,请记住 - 如果您使用的是
jQuery.noConfilct
我强烈建议使用它:I don't know Mootools, but for me it looks like simple race condition (assuming that Assets are loaded asynchronously and executed without any specified order). Try to load
MyScript.js
inonLoad
callback of jQuery loading Asset.And, keep in mind - if you are using
jQuery.noConfilct
I strongly suggest to use this: