jQuery.holdReady(true|false) :指定是否需要延迟jQuery的ready()事件绑定的事件处理函数。需要指出的是,程序可以多次调用holdReady(true)来延迟ready事件的事件处理函数。如果绑定了多个holdReady(true),则需要多次调用holdReady(false)来解除延迟,否则ready()事件绑定的事件处理函数将不被激发。
$.holdReady(true);//指定页面装载完成后自动回调该函数
$(function()
{
alert("页面装载完成!");
});
window.setTimeout("$.holdReady(false);",2000);
上面的页面代码本来可以立即执行 alert("页面装载完成!");的,但由于页面开始使用了holdReady(true)来延迟ready()事件,并指定在2秒后才取消延迟,因此该页面需要在2秒后才能弹出提示框。
当程序需要页面装载完成,并且某些脚本和代码动态加载完成后才激发指定函数时,就可以借助于jQuery.holdReady了。例如如下示例代码:
$.holdReady(true);
$.getScript("fkjava.js",function(){
$.holdReady(false);
});
上面的代码将会保证只有fkjava.js被动态加载完成后,才能解除ready()事件的延迟。
阅读(1095) | 评论(0) | 转发(0) |