在尝试暂停setInterval时遇到问题



在我的JQuery中,我有一些代码,在我的Web.config中提到的每个时间间隔后进入数据库…我还有一个按钮,点击按钮应该停止当前SetInterval为10秒…我正在使用下面提到的代码…

window.setTimeout(MyFunction, 10000);

MyFunction是回调函数

function MyFunction() {
    window.setTimeout(MyFunction, 10000);
}

控制器行动

public JsonResult GetUpdates()
{
}

如果你想暂停函数的执行,你可以在MyFunction中设置一个条件,检查按钮是否被点击,而不是注册另一个setTimeout回调:

function MyFunction() {
    if (window.pauseExecution) {
        return;
    }
    // do the processing here ...
    // schedule another call in 10 seconds
    window.setTimeout(MyFunction, 10000);
}

,当你点击按钮简单地设置window.pauseExecution全局变量为true。如果您希望恢复,则将其设置为false

var Interval = window.setTimeout(MyFunction, 10000);
ClearInterval(Interval);
    setTimeout(function () {
        //Code
    }, 10000);

最新更新