HTML解析完畢 外部腳本和樣式表加載完畢 腳本在文檔內(nèi)解析并執(zhí)行 HTML DOM完全構(gòu)造起來 圖片和外部內(nèi)容加載 網(wǎng)頁完成加載
在網(wǎng)頁頭部并且從外部文件加載的腳本會在HTML真正構(gòu)造之前執(zhí)行。如前所述,這是個至關重要的問題,因為這兩處執(zhí)行的腳本并不能訪問還不存在的DOM。幸好,我們還有若干的補救方法。 目前,最常用的級數(shù)是完全等待整個頁面加載完畢才執(zhí)行DOM操作。這種技術(shù)只需利用window對象的load事件來綁定一個函數(shù),頁面加載完畢即可觸發(fā)。 代碼如下: addEvent(window, "load", function(){ // do something });
最簡單的操作卻是最慢的。在加載過程的順序列表中,你會注意到頁面的加載完畢與否完全被最后一步所掌控。這就是說,如果頁面有很多的圖片、視頻等,用戶可能得登上一段時間JavaScript才執(zhí)行。 另一種級數(shù)可用以監(jiān)聽 DOM 加載狀態(tài),可能是最復雜的(從實現(xiàn)角度來看),但也是最有效地。 這項技術(shù)在不堵塞瀏覽器加載的情況下盡可能快地檢查 HTML DOM文檔是否已經(jīng)加載了執(zhí)行所必須得屬性。以下是檢查HTML DOM是否可用的幾個要點: