延迟定时间隔功能?

时间:2013-01-30 19:37:38

标签: javascript jquery

我的功能设置如下:

setInterval(function () { get_fb(); }, 10000);

每当用户做某事时(例如将鼠标悬停在元素上或点击元素),我想将计时器重置为10秒

我如何告诉程序做这样的事情?

3 个答案:

答案 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