2011-05-24 83 views
3

可能重複:
jQuery delay between animations創建的功能的運行之間的延遲

我已經創建了兩個功能:一個動畫化從A點的對象的點B,並且所述第二,從B點移動到C點。我想在兩個功能之間有一段時間延遲。 有人可以告訴我如何做到這一點。我不成功的嘗試是:

movt_1().delay(5000).movt_2(); 

另外,我想之前的第一個動畫運行

由於必須在一開始就延遲吧!

+0

如果這樣做對於[動畫之間的jQuery延遲](檢索http://stackoverflow.com/search ?q = jquery + delay + between + animations),你會得到幾十個類似於或相同的問題。 – eykanal 2011-05-24 03:16:51

回答

2
function movt_1() 
{ 
    //your code here 
    setTimeout (movt_2, 5000); 
} 

function movt_2() 
{ 
    //your code here 
} 

setTimeout (movt_1, 5000); 

編輯:將第一個參數更改爲「正確」的方式。

+2

這應該是'setTimeout(movt_1,5000);'和'setTimeout(movt_2,5000);' – qwertymk 2011-05-24 03:16:56

+0

不確定,但w3cschool說不同:http://www.w3schools.com/js/js_timing.asp – Hyperboreus 2011-05-24 03:17:50

+0

+1到@qertymk,我已經使用它,你不必把雙引號和括號。 – Mel 2011-05-24 03:19:08

3

jQuery .delay()函數僅適用於使用隊列的函數。例如,根據docs,無參數.show()和.hide()將不起作用。如果您使用的是您寫的功能,則可以使用setTimeout() javascript功能。

1

jQuery的.delay()函數僅適用於動畫隊列中的項目。

下面的示例使用.delay()和一個回調函數來修改第二元件:

$('#test1').hide('fade', {}, 1000).delay(3000).hide(0, function() { 
    $('#test2').show(0).delay(3000).hide(); 
});