how to stop a javascript loop for a particular interval of time?
我正在使用javascript for循环,循环一个特定的数组并提醒它的价值。 我希望在每次警报后它应该停止30秒然后继续......直到循环结束。
我的代码在这里..
1 2 3 4 5 | for(var i=0; i<valArray.lenght; i++) { alert("The value ="+valArray[i]); //stop for 30seconds.. } |
我已经使用了setTimeout()函数,但它没有工作...作为循环结束迭代但不停顿30秒间隔...
在PHP中有没有其他方法如睡眠功能?
1 2 3 4 5 6 | for (var i = 0; i < valArray.length; i++) (function(i) { setTimeout(function() { alert(valArray[i]); }, i * 30000); })(i); |
编辑修复闭包循环问题。
JavaScript中没有睡眠功能。
您可以将以上代码重构为:
1 2 3 4 5 6 7 | function alert_and_sleep(i) { alert("The value ="+valArray[i]); if(i<valArray.length) { setTimeout('alert_and_sleep('+(i+1)+')',30000); } } alert_and_sleep(0); |