From a suggestion by Diego, moved the jQuery.ready() call outside of the try{}catch() block for IE/Safari DOM Ready.

This commit is contained in:
John Resig 2007-10-15 17:55:54 +00:00
parent 971840f343
commit a2fc65fd32

View file

@ -430,24 +430,20 @@ function bindReady(){
document.addEventListener( "DOMContentLoaded", jQuery.ready, false ); document.addEventListener( "DOMContentLoaded", jQuery.ready, false );
// If Safari or IE is used // If Safari or IE is used
else {
// Continually check to see if the document is ready // Continually check to see if the document is ready
function timer(){ else (function(){
try { try {
// If IE is used, use the trick by Diego Perini // If IE is used, use the trick by Diego Perini
// http://javascript.nwbox.com/IEContentLoaded/ // http://javascript.nwbox.com/IEContentLoaded/
if ( jQuery.browser.msie || document.readyState != "loaded" && document.readyState != "complete" ) if ( jQuery.browser.msie || document.readyState != "loaded" && document.readyState != "complete" )
document.documentElement.doScroll("left"); document.documentElement.doScroll("left");
} catch( error ) {
return setTimeout( arguments.callee, 0 );
}
// and execute any waiting functions // and execute any waiting functions
jQuery.ready(); jQuery.ready();
} catch( error ) { })();
setTimeout( timer, 0 );
}
}
timer();
}
// A fallback to window.onload, that will always work // A fallback to window.onload, that will always work
jQuery.event.add( window, "load", jQuery.ready ); jQuery.event.add( window, "load", jQuery.ready );