我有以下代码:

var int1 = setInterval(function () {
    // do stuff

    if(//stuff done){
        clearInterval(int1);
        setTimeout(
             function () {
                  setInterval(int1)
             }
        ,60000);
    }}
}, 1000)


并希望间隔在60秒后再次运行,但是setInterval(int1)似乎没有再次触发它。我究竟做错了什么?

编辑:完整代码:http://pastie.org/8704786

最佳答案

那是因为int1不是函数,而是间隔ID。尝试以下方法:

var int1;
var func = function () {
    // do stuff

    if(//stuff done){
        clearInterval(int1);
        setTimeout(func, 60000);
    }
};
int1 = setInterval(func, 1000);

关于javascript - 清除间隔后重置,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21603837/

10-12 02:08