javascript文档准备好firefox(jQuery)

时间:2009-12-06 17:30:18

标签: jquery firefox document ready

在FireFox中,我在身体的末尾有这个jQuery:

$(document).ready(function() {
     $.getScript('LiveMapsJavascriptProvider.aspx?type=reference&value=6', init);
});

头部中有很多js文件需要全部加载才能生效。所以我把我的电话放在了document.ready事件中。它不起作用。 IE工作正常。

如果我发出警报('');在我调用$ .getScript之前它可以工作。

看起来脚本没有加载的问题呢?

我认为Document.ready在加载所有脚本并准备就绪后被解雇了。

谢谢, 伊恩

3 个答案:

答案 0 :(得分:9)

加载DOM后会触发

document.ready。你可以试试这个:

$(window).load(function() {
    // will execute once all scripts and images are finished loading
});

答案 1 :(得分:3)

您不一定需要使用jQuery。

只需具有如下的onload功能:

<body onload="JavascriptFunctionName">

或者您可以动态地将函数调用附加到onload事件,如下所示:

function addEvent(obj, evType, fn){ 
 if (obj.addEventListener){ 
   obj.addEventListener(evType, fn, false); 
   return true; 
 } else if (obj.attachEvent){ 
   var r = obj.attachEvent("on"+evType, fn); 
   return r; 
 } else { 
   return false; 
 } 
}
addEvent(window, 'load', JavascriptFunctionName);

您可以在JavascriptFunctionName函数中嵌入jQuery函数调用。

修改

jQuery也可以通过以下代码实现这一点。我建议先尝试一下,以避免不必要的冗余代码。

$(window).load(function() {
    JavascriptFunctionName();
});

答案 2 :(得分:0)

您可以尝试使用类似head.js的内容来指定执行顺序,同时仍然可以利用并行加载。