如何在特定秒数后停止 setInterval? - clearInterval 未在条件下激活,例如:if (count > 3)
How do I stop setInterval after a specific second count? - clearInterval not activating in a conditional, ex: if (count > 3)
我意识到这个问题已经被问了很多,但我仍然无法让 clearInterval 启动。当然我缺少一些简单的东西:
...
let count = 0;
var intCount = null;
var intPic = null;
function Shuffle () {
intCount = setInterval(Count, 1000);
intPic = setInterval(ChangePic, 200);
if (count > 3) {
clearInterval(intCount);
clearInterval(intPic);
}
}
function Count () {
count++;
}
...
Shuffle() 来自点击并触发 setIntervals 并且计数确实增加(远远超过 4)并且永不停止。
setInterval 是一个异步任务。单击 this.When shuffle 事件循环进入画面,它创建两个 setIntervals 并且 shuffle 函数完成执行。所以对于每次间隔迭代,js引擎都可以访问count和changPic函数。你可以在那里写下你的条件。
将计数检查放入计数函数中。
let count = 0;
var intCount = null;
var intPic = null;
function Shuffle () {
intCount = setInterval(Count, 1000);
intPic = setInterval(ChangePic, 200);
}
function Count () {
if (count > 3) {
clearInterval(intCount);
clearInterval(intPic);
} else {
count++;
}
}
我意识到这个问题已经被问了很多,但我仍然无法让 clearInterval 启动。当然我缺少一些简单的东西:
...
let count = 0;
var intCount = null;
var intPic = null;
function Shuffle () {
intCount = setInterval(Count, 1000);
intPic = setInterval(ChangePic, 200);
if (count > 3) {
clearInterval(intCount);
clearInterval(intPic);
}
}
function Count () {
count++;
}
...
Shuffle() 来自点击并触发 setIntervals 并且计数确实增加(远远超过 4)并且永不停止。
setInterval 是一个异步任务。单击 this.When shuffle 事件循环进入画面,它创建两个 setIntervals 并且 shuffle 函数完成执行。所以对于每次间隔迭代,js引擎都可以访问count和changPic函数。你可以在那里写下你的条件。 将计数检查放入计数函数中。
let count = 0;
var intCount = null;
var intPic = null;
function Shuffle () {
intCount = setInterval(Count, 1000);
intPic = setInterval(ChangePic, 200);
}
function Count () {
if (count > 3) {
clearInterval(intCount);
clearInterval(intPic);
} else {
count++;
}
}