我不明白这个错误。
有我的简单代码:
var refreshInterval;
function refreshAuto()
{
if($("#refresh-select").val() == "off")
{
clearInterval(refreshInterval);
console.log("I'm here !");
}
else
{
refreshInterval = setInterval("console.log('bip')", $("#refresh-select").val());
}
}
我选择带有下拉列表的计时器。
该代码的工作方式除外(清除计时器的参数,我已经测试过)清除间隔的部分。没有清除间隔。当我选择“关闭”时,控制台会告诉我“我在这里”,但不会停下来“踩”一下。任何想法?
谢谢。
最佳答案
如果您多次按开按钮,可能会发生。原因是即使新间隔的引用替换了第一个间隔,也不会清除第一个间隔。
尝试这个,
var refreshInterval;
function refreshAuto()
{
clearInterval(refreshInterval);
if($("#refresh-select").val() == "off")
{
console.log("I'm here !");
}
else
{
refreshInterval = setInterval("console.log('bip')", $("#refresh-select").val());
}
}
关于javascript - 计时器:clearInterval()不起作用(js),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27361680/