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);
});