2011-11-11 6 views
3

私はajax呼び出しでhtmlを更新します。私は非表示としての要素を追加する必要があり、その後、アニメーションを適用します。divをjQueryで非表示にするにはどうすればいいですか?

$.ajax({ 
    success: function (data, textStatus) { 
     $(".comments").prepend(data); 
     $(".comments .comment-frame:first").slideDown("slow"); // it doesn't work, since element is visible 

データが追加さ:

<div class="comment-frame"> 
... 
</div> 

を私はすでにとページ上の他の要素を持っているので、私は、クラスcomment-frameが隠さ作るために、CSSを変更することはできません同じクラスを表示する必要があります。だから、どういうわけか私はそれをdataを隠して追加するべきです。どうしたらいいですか?

+0

試し '$( "コメント")。プリペンド(データ).hide()は' –

+0

が.commentフレームであるあなたの.comments divの中に常に最初のdivを(あなたがtyargettingていますか)? –

+0

Innuendo、それは私の最初の勘違いでしたが、私はそれがラッピング要素.commentsを隠すだろうと疑っています。 –

答えて

8

あなたは.prepend()$(".comments")にそれをINGの前にそれをdataのうち、jQueryオブジェクトを作成し、.hide()ことができます。

$.ajax({ 
    success: function (data, textStatus) { 
     var $data = $(data).hide(); 
     $(".comments").prepend($data); 
     $(".comments .comment-frame:first").slideDown("slow"); 
6

あなたがそれを挿入すると、隠しだラッパーを作成します。

$(".comments").prepend('<div style="display:none">'+data+'</div>'); 
関連する問題