window.onload和$(document).ready(function(){})的區別


原文出自:http://www.php100.com/html/program/jquery/2013/0905/5954.html

1、執行時間上的區別:window.onload必須等到頁面內(包括圖片的)所有元素加載到瀏覽器中后才能執行。而$(document).ready(function(){})是DOM結構加載完畢后就會執行。

2、編寫個數不同:window.onload不能同時寫多個,如果有多個window.onload,則只有最后一個會執行,它會把前面的都覆蓋掉。$(document).ready(function(){})則不同,它可以編寫多個,並且每一個都會執行。

3、簡寫方法:window.onload沒有簡寫的方法,$(document).ready(function(){})可以簡寫為$(function(){})。

另外:由於在$(document).ready()方法內注冊的事件,只要DOM就緒就會被執行,因此可能此時元素的關聯文件未下載完,例如與圖片有關的HTML下載完畢,並且已經解析為DOM樹了,但很有可能圖片還未加載完畢,所以例如圖片的高度和寬度這樣的屬性此時不一定有效。

要解決這個問題,可以使用JQuery中另一個關於頁面加載的方法---load()方法。load()方法會在元素的onload事件中綁定一個處理函數。如果處理函數綁定在元素上,則會在元素的內容加載完畢后觸發。如:$(window).load(function(){})=====window.onload = function(){}...


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM