我嘗試循環一些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