2011-07-01 5 views
6

私は次のマークアップがありますjQueryを使用して親div内の最初のdivを削除するにはどうすればよいですか?

<div id="parent"> 
    <div id="divToRemove"> 
    </div> 
</div> 

をそして、私は正常に動作します最初のdiv削除するには、次のjQueryを持っている:

$('#parent').find('div').remove(); 

は、これが最初のコンポーネントを削除するための最良の方法ですか?または、セレクタを使用する方が効率的ですか?例が素晴らしいだろう!

に注意してください、私が使用することができます知っている:

$('#divToRemove').remove(); 

を私は(質問の範囲外の理由から)この例では、セレクタを使用できるようにしたいと思いますが。

ありがとう、 ノルム。

答えて

15

これは、最速かつ最も安全でなければなりません:あなたはこれを試すことができ

$('#parent').find('div').first().remove(); 
3

あなたが

$('#parent').find('div:first').remove(); 

をしたいか、それが親 <div>内のすべての <div>を削除します。

0

。それは私の上で完璧に動作します。

$( '#親')。find( 'div:first')。

0
$('#parent').children('div:first').remove(); 

あなただけの親の直接の子div要素の削除について話している。この場合、使用。より多くの内部divがあるときは.find()よりも優れています。

2

としましょう。あなたはJSイベントをしていて、 "this"へのアクセス権があります 私はこのようにします。

$('#child').click(function(){ 
    $(this).closest('div#parent').children('div:first').remove(); 
}); 

これは最も効率的な方法ではありませんが、インタラクティブなイベントで役立ちます。 代わりに、あなたはいくつかのセレクタを利用することができます。

$('#parent > div:first').remove(); 

「>」左に参照される要素の子を選択し、「もちろん:

//closest,parent,next,prev,find,children and nth-child() 
0

アイブ氏は別のものを得ました:最初の "は最初の子を指します。

関連する問題