function myFunction(interval) {
var intervalID = window.setInterval(function () {
getdetails();
$('.View').load('alert.php').fadeIn("slow");
}, 3000);
if (interval == 1) {
window.clearInterval(intervalID);
}
}
当我使用参数1调用myFunction时,clearInterval()
不清除setInterval()
。当我使用参数1调用myFunction时,我希望setInterval()
停止执行。
答案 0 :(得分:0)
问题是每次调用该函数时都要创建一个新的计时器。修改如下:
var intervalID = 0;
function myFunction(interval){
if(interval == 1) {
if(intervalID != 0) {
window.clearInterval(intervalID);
intervalID = 0;
}
}
else if(intervalID == 0) { // create only if not existing
intervalID = window.setInterval(function () {
...
});
}
}
现在,你打电话给它的第一次,它会创建计时器。之后当你用1作为参数调用它时,它将清除计时器。