所以在我的javascript代码中,有一部分如果用户点击复选框,我需要更改setInterval()
使用的时间延迟。目前,我在复选框中使用了onchange
处理程序。每当复选框更改时,我都会调用clearInterval()
并setInterval()
。我将间隔 id 作为全局变量。现在,如果用户在我调用clearInterval()
之前更改了复选框,我预计会出现一些问题,但没有任何反应。有没有更好的方法可以做到这一点,或者这种方式被认为是标准的?有没有办法检查是否存在interval
?
附言。我对Javascript很陌生,大约5小时前开始了。
这应该有效:
var myInterval = setInterval(...);
document.getElementById('myCheckbox').onchange = function()
{
var func = arguments.callee;
if (func.busy) return;
func.busy = true;
clearInterval(myInterval);
myInterval = setInterval(...);
func.busy = false;
}