jquery的ready()實作的是 DOMContentLoaded 事件,DOMContentLoaded與window load事件的差異
簡單的說ready()是在文件載入完成就會觸發,此時圖片等資源可能還沒完全載入, load是在所有資源都載入完成後才會觸發
看下ready函數的程式碼就什麼都清楚了。下面的程式碼加上了註解:
// Handle when the DOM is ready ready: function() { // Make sure that the DOM is not already loaded if ( !jQuery.isReady ) { // Make sure body exists, at least, in case IE gets a little overzealous (ticket #5443). if ( !document.body ) { return setTimeout( jQuery.ready, 13 ); } // Remember that the DOM is ready jQuery.isReady = true; // If there are functions bound, to execute if ( readyList ) { // Execute all of them var fn, i = 0; while ( (fn = readyList[ i++ ]) ) { fn.call( document, jQuery ); } // Reset the list of functions readyList = null; } // Trigger any bound ready events if ( jQuery.fn.triggerHandler ) { jQuery( document ).triggerHandler( "ready" ); } } },
以上所述就是本文的全部內容了,希望大家能夠喜歡。