2013-06-25 73 views
0

我有下面的動畫背景圖片的代碼。在動畫結束時,它淡出。但是,我想要實現的是元素在動畫完成之前淡出。所以,如果動畫需要6秒,而淡出需要2秒,則淡入從4秒開始,以便動畫結束和淡出結束同時發生。任何幫助將非常感激。jQuery fadeout同時動畫結束

first_slide.animate({'background-size':'100%'}, 6000, 'linear').fadeOut(2000); 

回答

2

你必須分配不同的動畫,加入隊列:假值,因此DIV可以在同一time.Then有兩個動畫只需添加一個延遲:

http://jsfiddle.net/8df2t/

first_slide.animate({ 
    'background-size': '100%' 
}, { 
    duration: 6000, 
    easing: 'linear', 
    queue: false 
}) 
    .delay(4000).fadeOut(2000); 
1

嘗試使用.delay(),它延緩了fadeOut(2000)語句的執行4秒

first_slide.animate({'background-size':'100%'}, 6000, 'linear').delay(4000).fadeOut(2000); 
+0

這除非將'queue'參數設置爲false(默認爲true),否則不起作用。 Alvaro的答案是正確的... –

1

您可以使用這兩者分別爲好。

 first_slide.animate({'background-size':'100%'}, 6000, 'linear'); 

    window.setTimeout(function(){ 

      first_slide.fadeOut(2000);  
    },4000); 
+1

雖然使用delay()是一個更好的選擇... – Janak