当前位置:  开发笔记 > 前端 > 正文

如何在jQuery中触发$().ready()?

如何解决《如何在jQuery中触发$().ready()?》经验,为你挑选了2个好方法。

使用jQuery,有没有办法document.ready在页面加载后的某个时刻重新触发触发器?

更新:jQuery一旦运行就会脱掉它们.在我的实验中,看起来jQuery会在触发().ready初始ready事件后遇到回调时立即运行回调.



1> Matthew Crum..:

如果您只需确保运行新的初始化函数,则无需执行任何操作.当您$().ready在文档完成加载后添加新的事件处理程序时,它将立即运行.

显然,$().trigger("ready")直接调用不起作用,因为jQuery在运行它们之后重置ready事件处理程序.您需要跟踪需要呼叫的功能,并直接调用它们,如下所示.

当然,直接调用函数可能会更好,所以你不要重新运行你不想要的东西(某些插件可能有自己的$().ready()函数,他们不期望跑两次).

$().ready(initializationFunction);

// later:
initializationFunction(jQuery);



2> kzh..:

你可以这样做:

$(document).on('ready readyAgain', function() {
    // do stuff
});

// At some other point in time, just trigger readyAgain
$(document).trigger('readyAgain');

注意:

$(document).on('ready')已根据文档在jQuery 1.8中弃用.另一种方法如下:

function myReadyFunction(){}
$(myReadyFunction);

// at some other point, just call your function whenever needed:
myReadyFunction($);

推荐阅读
保佑欣疼你的芯疼
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有