我有一个函数,我定义了很多setTimeout()函数。 当用户按下按钮时,它开始执行。
如何取消?
有没有办法取消所有超时(假设我有多个没有名字)
答案 0 :(得分:4)
// start timer
var timer = setTimeout(...);
// cancel timer
clearTimeout(timer);
请参阅https://developer.mozilla.org/en-US/docs/DOM/window.clearTimeout
答案 1 :(得分:0)
将setTimeout
返回的计时器ID传递给clearTimeout
。
答案 2 :(得分:0)
使用clearTimeout:
var timer = setTimeout(function(){ alert("hello!"); }, 3000);
...
clearTimeout(timer);
答案 3 :(得分:0)
函数setTimeout()返回一个可用于清除超时的ID。您必须跟踪超时,并手动清除它们:
var timeoutID = setTimeout( scheduledFunction, time );
// do stuff...
//clear the timeout:
clearTimeout( timeoutID );