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