2014-01-24 73 views
-2

這些函數$(document).ready$(window).load之間的區別是什麼,例如,如果我想在所有頁面完成加載時使用一個運行代碼?由於這些函數是在純JavaScript中實現的?謝謝!

回答

2
window.onload = function() { 

    alert("welcome"); 

}; 

不幸,直到所有圖像完成下載後,代碼纔會運行,包括橫幅廣告。儘快運行代碼的文件已準備好進行操作,jQuery有被稱爲ready事件發表聲明:從http://learn.jquery.com/about-jquery/how-jquery-works/

另外,$(document).ready(function(){});

$(document).ready(function() { 

    // Your code here. 

}); 

來源它通過呼叫通話功能了。你可以定義很多$(document).ready。它將全部運行。

window.onload = function(){}
「assign」=>定義多個window.onload = ...時,它只運行最後一個函數。

+0

'$(window).load()'和'window.onload = ...'不是一回事,而是做同樣的事情。你可以有很多'$(window).load()'事件,但不推薦使用(與DOM就緒方法相同)。它與window.addEventListener('load',function(){})'相同。另外,代碼僅在*「所有圖像完成」*時才運行*並不是不幸的*。 –

1

$(document).ready()只要DOM準備就緒就會觸發,並且您可以混淆DOM元素。 $(window).load()在加載頁面內容(包括圖像)時觸發。

1

document.ready將在HTML文檔加載屬性後立即執行,並且DOM已準備就緒。

document.ready(一個jQuery事件)將在所有元素都到位時觸發,並且可以在JS代碼中引用它們,但內容不一定會加載。

window.load但將等待頁面完全加載,這包括內部框架,圖像等

window.load是一個內置的JavaScript方法,已知的是,在舊的瀏覽器的一些怪癖(IE6 ,IE8,舊的FF和Opera版本),但通常會在所有這些工作。

window.load可以在人體的這樣的onload事件中使用(但我強烈建議你避免在HTML混合這樣的代碼,因爲它是混亂的來源以後):

相關問題