2011-09-08 15 views
2

についての質問次のように私はいくつかのjqueryのコードを持っている:私は何を期待jQueryのアニメーション...タイミング

$('#trash-talk-bubble').fadeOut().empty().append(trash_talk).fadeIn(); 

が新しいコンテンツであることによって空にし、続いて得る内容に続いて、フェードアウトするバブルであります加え、次いでバブルが。後ろに

代わりにバブルフェードをフェードインすると、それが空をフェードアウトとし、追加のコマンドは、その後には、発生したフェードを行わ...と。たぶん私は

答えて

3

はフェードアウトが終了する前に、空には今、このメソッドは空APPENDとフェードインを使用して、呼び出されたためである。この

$('#trash-talk-bubble').fadeOut('slow', function() { 
    $(this).empty().append(trash_talk).fadeIn(); 
}); 

ようにする必要があります。これがどのように機能するかを誤解してい

はvalledされますフェードアウトが終了した後。私はフェードアウトを行うと仮定何らかの理由でそれが終了するアニメーションを待つdoes notのもの..をチェーンするとき理にかなって

+0

は...そう、基本的に()..追記が発生したそれまではフェードアウトが起こるのを待つだろう)(追加します。私はfadeOut()を知っている.fadeIn()はそのように動作します。 – Roeland

+0

いいえ、それはできませんが、jQuery関数の遅延を使用することもできますので、このfadeOut()のようになります。delay(2000).empty()。append( 'your html')。 –

+0

私はかなり遅延が私のテストからのアニメーションに影響を与えることを確信しています。空であり、遅延が無視されるようにすぐに起こります – Roeland

関連する問題