js中我设置点击事件用cleartimeout来清除settimeout的效果,为啥只有在setTimeout效果产生之前点击才有用

2025-12-05 15:42:38
推荐回答(1个)
回答1:

因为setTimeout()只有在效果产生以后,才会生成唯一的timeoutId。然后,你才能通过clearTimeout(timeoutId); 使setTimeout() 失效。
如果你这样操作:
m1 =setTimeout('tick()',1000);
m2 = setTimeout('tick2()',5000);
clearTimeout(m1);这样,5秒以后,就不会再执行tick();