Javascript clearInterval在简单示例中工作不正常
和我的html:Javascript clearInterval在简单示例中工作不正常,javascript,html,timer,setinterval,clearinterval,Javascript,Html,Timer,Setinterval,Clearinterval,和我的html: var timer = setInterval(function() {update()}, 1000) function myStopFunction() { clearInterval(timer); } 停止时间 我不明白为什么这样不行?如果能得到一些提示就太好了,我认为这是范围的问题?您的程序不太清楚,因为我无法从这个小示例中真正了解您的函数范围 但是,一种可能是您在另一个函数中声明了setInterval函数,该函数被多次调用 在这种情况下,将设置多个间隔,并且
var timer = setInterval(function() {update()}, 1000)
function myStopFunction()
{
clearInterval(timer);
}
停止时间
我不明白为什么这样不行?如果能得到一些提示就太好了,我认为这是范围的问题?您的程序不太清楚,因为我无法从这个小示例中真正了解您的函数范围 但是,一种可能是您在另一个函数中声明了setInterval函数,该函数被多次调用 在这种情况下,将设置多个间隔,并且只有最后一个要设置的间隔将被clearInterval清除 如果这是您的问题,解决方案是将timer声明为全局变量,然后在每次设置interval之前声明clearInterval(timer) 我在下面写了一个例子
<button onclick="myStopFunction()">Stop time</button>
作品确保
myStopFunction()
是全局的。如果myStopFunction
在另一个函数中定义>@Musa Nope-它是全局的,但仍然不工作…控制台是否显示任何错误?
var timer;
function mySetFunction(){
clearInterval(timer);
timer = setInterval(function() {update()}, 1000);
}
function myStopFunction()
{
clearInterval(timer);
}