clearInterval在简单示例中无法正常工作

时间:2014-03-06 00:06:50

标签: javascript html timer setinterval clearinterval

var timer = setInterval(function() {update()}, 1000)

function myStopFunction()
{
clearInterval(timer);
}

和我的HTML:

<button onclick="myStopFunction()">Stop time</button>

我不明白为什么这不起作用?得到一些指针会很棒,我认为这是范围问题吗?

1 个答案:

答案 0 :(得分:0)

你的程序并不完全清楚,因为我无法从这个小例子中找出你的功能范围。

然而,一种可能性是你已经在另一个函数中声明了setInterval函数,这个函数被多次调用。

在这种情况下,正在设置多个间隔,并且只使用clearInterval清除要设置的最后一个间隔。

如果这是你的问题,那么解决方案就是在每次setInterval之前将timer声明为全局变量然后clearInterval(timer)。

我在下面写了一个例子

var timer;
function mySetFunction(){
      clearInterval(timer);
      timer = setInterval(function() {update()}, 1000);
}

function myStopFunction()
{
clearInterval(timer);
}
相关问题