我尝试循环一些div的,并且我有代码:的JavaScript的setTimeout +循环
var first = ".first";
for (i = 0; i < 9999; i++) {
setTimeout(function() {
$(first).delay(500).animate({
"opacity": "1"
}, 1500);
$(first).delay(1500).animate({
"opacity": "0"
}, 1500);
$(".1").delay(4500).animate({
"opacity": "1"
}, 1500);
$(".1").delay(1500).animate({
"opacity": "0"
}, 1500);
$(".2").delay(4800).animate({
"opacity": "1"
}, 1500);
$(".2").delay(1500).animate({
"opacity": "0"
}, 1500);
$(".3").delay(5300).animate({
"opacity": "1"
}, 1500);
$(".3").delay(1500).animate({
"opacity": "0"
}, 1500);
$(".4").delay(5600).animate({
"opacity": "1"
}, 1500);
$(".4").delay(1500).animate({
"opacity": "0"
}, 1500);
$(".5").delay(5900).animate({
"opacity": "1"
}, 1500);
$(".5").delay(1500).animate({
"opacity": "0"
}, 1500);
}, 6000);
}
我尝试没有setTimeout和作用是相同的 - 是的div出现,只有在第一环消失。在下一个循环中,它们以随机顺序出现。我知道,这种方法是错误的,但我用JavaScript来绿色,我不知道如何正确地做到这一点。有人可以帮助我吗?
动画以异步方式工作,因此,他们都开始在同一时刻为你工作。 还有第三个参数可以传递给动画,回调函数可以在动画完成时执行某些动作,尝试使用 – deb0rian
做一些事情[在循环中传递函数给setTimeout:总是最后一个值?]( http://stackoverflow.com/questions/6425062/passing-functions-to-settimeout-in-a-loop-always-the-last-value)和gazillion其他人 –
你能解释一下你试图得到什么效果 – Techsin