0

自分の行動に基づいて物事をスムーズに、そして秩序立てて実行するにはどうすればよいでしょうか。

すなわち

var $content = $("#content");
$content.slideUp().html('');
$conten.html(from_my_ajax_request).slideDown(); 

基本的に、div #content のコンテンツを配置する ajax リクエストを実行しました。

しかし、上記を実行すると、コードが入ってくるのがわかりますが、slideDown が引き継ぐ前に、slideUp は終了しません。私は明らかにそれが滑らかであることを望んでいます。

お役に立てれば幸いです。

4

3 に答える 3

1

.html()キューに入れられない (キューに関係なくすぐに発生する) ため、次のようにコールバックをfx使用します。.slideUp()

$("#content").slideUp(function() { 
   $(this).html(from_my_ajax_request).slideDown(); 
});

これは、が完了.html().slideDown()すると を呼び出します。または、次のようにします。.slideUp() .queue()

$("#content").slideUp().queue(function(n) { 
   $(this).html(from_my_ajax_request); n();
}).slideDown();
//or...
$("#content").slideUp().queue(function() { 
   $(this).html(from_my_ajax_request).dequeue();
}).slideDown();

これにより、実際に.html()呼び出しがfxキュー ステップとして配置され、.slideDown()完了後に実行されます。

于 2010-09-21T12:44:44.343 に答える
1
var $content = $("#content");
$content.slideUp(function() {
  $content.html('');
  $content.html(from_my_ajax_request).slideDown(); 
});

このように、コールバックを使用して、最初のアニメーションが完了したときに、アニメーションの 2 番目の部分をトリガーします。

スライドアップのドキュメント

于 2010-09-21T12:43:20.413 に答える
1

コールバックを slideUp に渡し、それを取得して次のステップを実行できます。

http://api.jquery.com/slideUp/

または、animate 呼び出しを使用できます。

http://api.jquery.com/animate/

于 2010-09-21T12:43:36.843 に答える