$.holdReady(true); 作用:暂停jQuery入口函数ready的执行。
在$.holdReady()方法允许调用者延迟jQuery的ready事件。这种先进的功能,通常是使用动态脚本加载器,要加载的JavaScript比如 jQuery插件,如额外的ready事件才让事件发生,即使在DOM可能准备。此方法必须早在文件调用,在这样<head> jQuery脚本后,立即标记。ready事件之后调用此方法即使已经发射也将没有任何效果。
要延迟ready事件,第一次调用的$.holdReady(true)。当ready事件应该执行时,调用$.holdReady(false) 。请注意,多个holds可以放在ready事件上,每个$.holdReady(true)逐一调用。ready事件将不会执行,直到所有已发布了相应的一个$.holdReady(false) 和正常的文件准备好条件得到满足
$.holdReady(true); //暂停ready函数的执行
$(document).ready(function(){
alert("ready");
});
var btn = document.getElementsByTagName("button")[0];
btn.onclick = function(){
$.holdReady(false); //取消暂停
}
$.holdReady(true);
$.getScript("myplugin.js", function() {
$.holdReady(false);
});