簡體   English   中英

JQuery中的元件fadeOut()和fadeIn()時的replaceWith()

[英]replaceWith() while elements fadeOut() and fadeIn() in JQuery

我想要做的就是簡單地淡出容器內的所有圖像,將#next1的圖像替換為#active,然后再次淡入所有圖像。

這是我的代碼:

$('.logo').fadeOut('slow', function() {
    $('#active>img').replaceWith( $('#next1>img') );
}).fadeIn('slow', function() {});

這行不通。 我發現自己看着空盪盪的#active

但是這;

$('.logo').fadeOut('slow', function() {}).fadeIn('slow', function() {});
$('#active>img').replaceWith( $('#next1>img') );

使替換很好,但不是我要嘗試的動畫。

我對chrome和IE都得到相同的結果。

我的建議是查看jQuery中的promise / done方法。 作為示例,您可以執行以下操作:

$('.logo').fadeOut('slow').promise().done(function(logo) {
    $('#active>img').replaceWith($('#next1>img'));
    $(logo).fadeIn('slow');
});

jQuery Promise- http://api.jquery.com/promise/

嘗試:

$('.logo').fadeOut('slow', function() {
    $('#active>img').replaceWith( $('#next1>img') );
    $(this).fadeIn('slow');
});

假設您要實現的目標正在淡出,然后在隱藏.logo替換內容,然后在替換徽標后淡入。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM