var playtop = setInterval(goright, 5000);
function goright(){
...
}
以上工作。
现在,我需要通过单击按钮来中断上述操作,在页面上执行某些操作,然后单击后十秒 - 再次激活 setInterval
。
$("#btngoright").click(function(){
clearInterval(playtop);
...
setTimeout(playtop, 10000);
});
但是,一旦中断,setInterval
就不会再次激活。
最佳答案
它不起作用,因为 playtop
是最初设置间隔时返回的 id。
setTimeout
方法需要一个函数,而不是 id,因此您应该再次传递对 goright
函数的引用:
setTimeout(goright, 10000);
如果您想在 10 秒后再次激活间隔,您可以设置一个间隔并在匿名函数中传递对 goright
函数的引用:
$("#btngoright").click(function(){
clearInterval(playtop);
setTimeout(function () {
setInterval(goright, 5000);
}, 10000);
});
关于javascript - setTimeout 之后的 setInterval,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34386082/