让jquery重新加载自己

时间:2010-11-02 20:32:05

标签: jquery

你怎么能让jquery重装自己?当我按下一个按钮时,我想告诉jquery它应该再次运行.ready函数。这是最好的方法。

2 个答案:

答案 0 :(得分:4)

你不能这样做,当jQuery加载runs through all ready handlers时,它也clears them off the list,所以它们无法再次运行。

相反,请将您的内容放入您可以调用的其他功能中,例如:

function startUp() {
 //do stuff
}
$(startUp); //run on ready

然后,只要您需要,请致电startUp()再次执行。

答案 1 :(得分:0)

好吧,你可以再次运行整个代码。但是,您可能不想这样做。例如,如果再次运行整个document.onready代码,则会将单击处理程序重新绑定到您在问题中提到的按钮。这意味着绑定到该元素的处理程序数量不断增加 - 当您单击它时,它将在第一次运行处理程序,然后第二次运行两次,第三次运行三次,等等。

您需要将需要执行一次的代码和需要多次运行的代码分开。然后你可以做这样的事情:

function init() {
    // do all the stuff you want done multiple times
}

$(document).ready(function(){
    init(); // do the repeatable stuff

    $('#myButton').click(init); // run init() when you click on the button
    // any other once-only code
});