jquery中ready()函数执行的时机和window的load事件比较

  作者:bea

jquery的ready()实现的是 DOMContentLoaded 事件,DOMContentLoaded与window load事件的区别 简单的说ready()是在文档加载完成就会触发,此时图片等资源可能还没有完全加载, load是在所有资源都加载完成后才会触发 看下ready函数的代码就什么都清楚了。下面的代码加上了注释: // Handle when the DOM is ready ready: function() { // Make

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" );
}
}
},


以上所述就是本文的全部内容了,希望大家能够喜欢。




有用  |  无用

猜你喜欢