jquery学习之延迟jQuery的ready事件

       网页页面dom加载完成后,我们才会处理一些业务逻辑,但是 有时候我们需要在加载完成之前做一些别的任务,此时,就需要了解延迟ready的事件。

      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) 正常的文件准备好条件得到满足。

参考案例:

<body>

<script src="js/jquery-2.1.4.min.js"></script>

<script>

$.holdReady(true);

$.getScript("js/mousetrap.js", function() {

    console.log("hold....");

    $.holdReady(false);

    console.log("hold after....");

});

$(function(){

console.log("ready.....");

});

</script>

</body>

执行结果:hold....

               ready.....

              hold after....

相关推荐