【发布时间】:2014-09-12 05:05:38
【问题描述】:
我创建了从 1 开始计数的 start() 函数。
我希望它在一段时间后执行某些操作,例如 5 秒。
如何实现?
我已尝试使用 if (timecounter == 5) 但这不起作用。
如果我把 while (timecounter < 5) {continue} 然后从上面的 if 语句,我进入无限循环。
function start() {
setInterval(function () {
timecounter = timecounter + 1;
document.getElementById('demo').innerHTML = timecounter;
}, 1000);
var clickArea = document.getElementById('clickBox');
document.getElementById('boxText').style.color = 'white';
clickArea.addEventListener("click", function () {
counter += 1;
});
if (timecounter === 5) {
alert('this');
} //Doesn't work
}
谢谢。
【问题讨论】:
-
为什么不使用 setTimeout()?
-
if (timecounter === 5) {将始终为 false,因为您在setInterval中设置了timecounter。该函数的其余部分只会被触发一次。 -
需要在回调中。
标签: javascript function if-statement while-loop setinterval