2014-02-24 54 views
0

我的問題在於延遲了函數的第一次運行。我創建了一個非常簡單的幻燈片,但因爲這個問題,我在第一次運行時遇到了問題。第一次運行時的較大延遲

我想第一次運行等待10秒,然後保持其他圖像之間的4秒延遲。

這是我的代碼:

function slideshow() { 

    $("#slideshow .slide:hidden:first").fadeIn(1000).delay(4000).fadeOut(1000, function() { 
     $(this).appendTo($(this).parent()); 
     slideshow(); 
    }); 

} 

$(document).ready(function() { 

    $("#slideshow .slide").hide(); 
    slideshow(); 

}); 

我已經嘗試了一些不同的東西,但沒有成功。

我不認爲這個問題需要jsfiddle,但如果你想它只是評論,我會設置它!

在此先感謝!

回答

2

您正在尋找Javascript內置的setTimeout函數,它會創建一個計時器並在計時器結束後執行傳遞的代碼。在你的$(document)。就緒(),你可以試試這個:

setTimeout(slideshow, 10000); 

這會耽誤你的slideshow函數的執行,持續10秒。 Documentation here

0

第一次調用幻燈片功能時使用超時。 setTimeout接受第二個參數作爲在參數中執行代碼之前等待的毫秒數。 10,000毫秒是10秒。

$(document).ready(function() { 
    $("#slideshow .slide").hide(); 
    setTimeout(function(){slideshow();},10000); 
});