'对象不支持为jQuery.noconflict()显示的此属性或方法'

时间:2011-09-14 06:34:47

标签: internet-explorer-8 mootools onload jquery

我的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行Char 1中断了

1 个答案:

答案 0 :(得分:1)

我不知道Mootools,但对我来说它看起来像简单的竞争条件(假设资产是异步加载并且没有任何指定的顺序执行)。尝试在jQuery加载资产的MyScript.js回调中加载onLoad

并且,请记住 - 如果您使用的是jQuery.noConfilct我强烈建议您使用此功能:

jQuery(document).ready(function($){
    //here you have local to jQuery under $ variable
});