A.關(guān)于$(document).ready():
jquery中的$(document).ready(),那$(document).ready()到底是什么作用呢?是不是可以用window.onload = function(){ ... }來實現(xiàn)呢?
這里,我們要明確二者之間的區(qū)別。
我們使用window.onload = function(){ ... },是希望在頁面被載入時執(zhí)行function中的處理,但是這些JS代碼只有在頁面上的全部內(nèi)容加載完成(包括頭部的banner廣告,所有圖片)的時候才會執(zhí)行。將window.onload放在最上邊的原因就是當(dāng)你第一次運行codes的時候,HTML'document'還沒有加載完成。
而$(document).ready()卻不需要載入得這么“完全”。$(document).ready()是在DOM結(jié)構(gòu)載入完后執(zhí)行的,而 window.onload是得在所有文件都加載完后執(zhí)行的,注意區(qū)別,一個是DOM加載完,一個是所有文件加載完。因此,ready肯定在onload 之前發(fā)生,頁面加載大或者多的圖片而使onload執(zhí)行延后,使用jquery的ready可緩解此問題。
我們應(yīng)該緊記,jquery的ready是指在頁面的DOM模型加載完后執(zhí)行指定的函數(shù)。之所以經(jīng)常用$(document).ready()來取代 window.onload,就是因為它是在dom模型加載完成后就執(zhí)行,而window.onload是在dom元素加載完全后才執(zhí)行。
B.關(guān)于document.onload和window.onload:
document.onload和window.onload沒有本質(zhì)的區(qū)別,都是指頁面載入完成后執(zhí)行指定函數(shù)。
做一個比較吧:
window .onload =function (){alert ("welcome");} $(document).ready( function (){ alert ("thanks for visiting!"); } );
運行后你會發(fā)現(xiàn) $(document).ready()先執(zhí)行。
以上就是本文的全部內(nèi)容,了解更多jQuery的語法,大家可以查看:《jQuery 1.10.3 在線手冊》,也希望大家多多支持綠夏網(wǎng)。