我試圖在5ooo秒內一次又一次地用包含不同整數的first_pic變量觸發函數。每次這個函數運行時,它都會給first_pic變量加1,顯然它不起作用,請幫忙。setTimeout()不會觸發函數
function slide(){
var total_pic = $("#slide_show").children().length;
var first_pic = $("#slide_show li:first-child").css('z-index',total_pic).index()+1;
$("#slide_show li:nth-child("+first_pic+")").fadeOut(4000, function(){
first_pic = first_pic + 1;
});
setTimeout(slide, 5000);
};
slide();
變量加1好聽,但setTimeout的不觸發功能再次
FYI,5000秒是5000000毫秒(這是'setTimeout()'中使用的單位)。當然,你可能意思是毫秒,因爲5000秒(〜1.3小時)是等待瀏覽器事件的很長時間 – Phil
那麼如何使用'setInterval()'來延遲重複? –
唯一真正的區別是,使用setTimeout,你可以立即啓動函數,然後每隔一段時間再次啓動,其中setInterval首先給你間隔延遲,然後觸發函數 – rlemon