哪位大佬帮帮小弟
哪位大佬帮小弟看一下,为什么在if语句不成立的前提下还能执行setTimeout事件?
<div>
<a href="javascript:void(0)" onclick="two()">×</a>
<a href="">
<img src="https://q.cnblogs.com/q/134020/img/shang.jpg" width="100%" height="100%" alt="" >
</a>
</div>
<script>
function one(){
document.getElementById('light').style.display='block';
}
function two(){
document.getElementById('light').style.display='none';
}
var a1 = document.getElementById('light');
a1.style.display='none';
var i = 0;
while (i < 100) {
if(a1.style.display == 'none'){
(function(i) {
setTimeout(function() {
console.log(a1.style.display);
one();
console.log(i)
}, 3000 * i)
})(i++)
}
}
</script>
回答
感谢各位大佬的帮助,我就是想做一个可以每5秒弹出图片,如果图片已经弹出,那么计时器就暂停,如果关掉图片后,启动计时器。不过我现在已经理清思路,把问题解决了