我已經編寫了下面的代碼,用作客戶端網站標題中的簡單幻燈片。現在,唯一的問題是,當我把它放到一個for或者while循環中時,它會到達第一個循環的末尾,然後停下來。我試過在最後一次回調中調用togglinga(),我嘗試過,在for和while循環中包裝整個事物,我試過創建一個不同的函數,調用這個函數,然後使用該函數在最後回調中使用相同的函數名稱,但每次都會得到相同的結果。我會很感激的人都把目光掠過這個,看看他們是否能看到什麼我不能....JS不會循環,在第一個循環後停止
function triggerAnimation(){
$("#logoareacontainer").delay(15000).fadeOut(3000, function() {
$("#title-1").fadeIn(0).delay(0, function() {
$("#cdsl-1-1").fadeIn(1000).delay(2000).fadeOut(0, function(){
$("#cdsl-1-2").fadeIn(0).delay(2000).fadeOut(0, function(){
$("#logoareacontainer").fadeIn(1000).css({display:'block'})
})
})
})
})
}
使用https://github.com/caolan/async。看'並行'和'系列'函數 –
** 1。**您正在使用jQuery,而不是普通的vanilla JavaScript。 ** 2。**發佈的代碼中沒有任何循環。 ** 3 **這段代碼的外觀雖然美觀,但應該引發一種感覺 - 要實現這一點,必須採取更明智的方式。對於初學者,我會使用Google'jQuery幻燈片插件'; – funkwurm
您應該考慮重寫此代碼以獲得一個配置數組對象,詳細說明哪些元素會淡入/淡出以及延遲多長時間,然後執行遞歸setTimeout函數會讓你的生活更容易 –