2012-04-20 67 views
4

如果有來自的window.onload VS jQuery的(文件)。就緒

$(document).ready(function() {...}) 

更改爲

window.onload = function() {...} 

的原因是我想提出一個小部件,如果我能想到的任何後果我想知道並且不希望執行jQuery包含以防用戶已將其包含在其應用中,也不希望他們必須修改小部件代碼 - 所以我正在動態確定是否應該包含它。

但是,爲了動態地包含它,我沒有在window.onload之前訪問jQuery,這引起了我的懷疑。

我的主要擔心是,這會破壞用戶的應用程序的功能。所以......會嗎?

在此先感謝。

+0

[window.onload vs document.ready]的可能重複(http://stackoverflow.com/questions/3698200/ window-onload-vs-document-ready) – 2012-04-20 17:35:56

回答

2

您的函數實際上會在頁面生命週期的不同點觸發。 onload在所有頁面元素被加載之前在生命週期中被調用,而ready事件隨後觸發。如果你想在不使用jQuery的情況下附加事件,你也可以輕鬆地做到這一點:

document.addEventListener('DOMContentReady', function() 
{ 
    // Stuff 
}); 
+1

永遠不會爲我運行:S http://jsfiddle.net/fsnx7/ – Garrett 2012-04-20 17:13:00

+0

有些東西與那個小提琴有關;當我在腳本中輸入時,即使'window.onload'事件也不會觸發。 – Tejs 2012-04-20 17:20:20

+0

哦:P嗯,我有一個普通的頁面,帶有'window.addEventListener('DOMContentReady',function(){alert('loaded');});'並且什麼也沒有。 – Garrett 2012-04-20 17:24:37