我有一个非常独特的情况,我需要一堆jQuery代码才能在单击按钮时重新执行。增加的并发症是:


我不允许浏览器窗口刷新
所有代码都在setTimeout()参数内-不确定这是否真的很重要


我无法将代码包装在click事件中,因为它需要在首次打开或刷新页面时自动运行。为了添加一些上下文,我模拟了以下内容:

 setTimeout(function() {
     // all the scripts that need to run
 }, 2500);

 $('.btn').click(function() {
     // re-run the above code without refreshing window or browser
 });


在这种情况下,是否可以通过单击按钮重新运行代码?

最佳答案

这实际上是一个相当普遍的问题。

创建一个包含在两个地方都需要运行的代码的函数,然后从setTimeout和onclick处理程序中调用该函数:

function someCode () {
    // Your code here
}

setTimeout (someCode, 2500);

$('.btn').click(someCode);


如有疑问,请执行功能。

关于javascript - jQuery-单击按钮后重新执行功能,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39872848/

10-12 19:01