我的功能设置如下:
setInterval(function () { get_fb(); }, 10000);
每当用户做某事时(例如将鼠标悬停在元素上或点击元素),我想将计时器重置为10秒
我如何告诉程序做这样的事情?
答案 0 :(得分:8)
您是否将计时器分配给变量,您可以将其清除并重新启动,如下所示:
var timer = setInterval(get_fb, 10000);
$('#foo').click(function() {
clearInterval(timer); // stop timer
// do something...
timer = setInterval(get_fb, 10000); // restart timer
});
答案 1 :(得分:2)
var timeout = setInterval(function () { get_fb(); }, 10000);
//to reset interval, first clear it
clearInterval(timeout);
//then re-create
timeout = setInterval(function () { get_fb(); }, 10000);
答案 2 :(得分:1)
在事件回调中,清除间隔,然后重新设置间隔:
interval = setInterval(...);
...elsewhere...
$(..selector..).click(function () {
clearInterval(interval);
interval = setInterval(...);
});
确保在点击回调的范围内可以访问interval
。