我试图在调用函数之前将计时器从5秒减少到零,我可以成功地做到这一点,但是我还没有能够在倒计时时显示计时器值. < div>< / div>而不是显示值.从空格到“数字:0”.我已经使用了setTimeout和setInterval两个相同的结果.
@H_404_2@<script type="text/javascript">
for (i = 5; i > 0; i--) {
function countDown() {
setInterval(function () {
document.getElementById("displayDiv").innerHTML = "Number: " + i;
},1000);
}
}
</script>
我也尝试使用.value代替.innerHTML而没有任何帮助.
@H_404_2@<input type="button" value="Count" onclick="countDown()" /> <div id="displayDiv" />这看起来应该很简单,但它让我难过.任何帮助表示赞赏
解决方法
@H_404_2@function countDown(i) {
var int = setInterval(function () {
document.getElementById("displayDiv").innerHTML = "Number: " + i;
i-- || clearInterval(int); //if i is 0,then stop the interval
},1000);
}
countDown(5);
演示:http://jsfiddle.net/DerekL/sFtqZ/(包括额外的回调参数)