javascript重置间隔

时间:2012-08-14 21:36:35

标签: javascript setinterval reset

我需要能够调用此函数来重置间隔。

我知道之前有人问过这件事。但答案给出了答案 Javascript - Reset setInterval back to 0 对我不起作用。

以下是我尝试过的代码:

function startTimer(){
    clearInterval(interval);    
    var interval = setInterval(function(){
        advanceSlide();
    }, 5000);
};

我在页面的开头调用它来启动每5秒更改一次的幻灯片。我用这段代码再次调用它,我预计会重置5秒钟。

onclick=startTimer();>

onclick也做了另一件事,但这是不起作用的。另一个动作发生但是间隔没有改变,它仍然基于我点击之前剩下的5秒的相同部分。

1 个答案:

答案 0 :(得分:8)

您需要在函数外声明变量...

var interval;

function startTimer() {
    clearInterval(interval);    
    interval = setInterval(advanceSlide, 5000);
}

否则在函数退出时会丢失。