Nir*_*rus 2 javascript jquery javascript-events settimeout countdowntimer
嗨,我对以下代码感到困惑
JSfiddle 链接
for(var i=6;i>=0;i--)
{
setTimeout((function(i)
{
$("div").delay(4000).html(i);
alert(i); //if commented unable to see the countdown
})
(i),4000);
//alert(1);
}
Run Code Online (Sandbox Code Playgroud)
我无法得到倒数计时器..什么是错误的...当"警报"被评论时无法看到倒计时数字.请有人解释上面的代码如何工作..发布一些正确的代码
.delay() 仅适用于jQuery动画方法,而不适用于一般的jQuery方法 .html()
你的所有超时都会立刻被解雇 - 没有什么可以解决它们的问题.
最终结果是(没有alert)通过循环的每次迭代立即运行,使得div包含0具有不可见(并且非常短暂地)包含来自先前迭代的其他数字.
试试这个,相反:
function counter($el, n) {
(function loop() {
$el.html(n);
if (n--) {
setTimeout(loop, 1000);
}
})();
}
counter($('div'), 6);
Run Code Online (Sandbox Code Playgroud)
见http://jsfiddle.net/alnitak/t3AA8/
| 归档时间: |
|
| 查看次数: |
4556 次 |
| 最近记录: |