2012-07-13 5 views
16

これは簡単なはずですが、できません。divの最初の直接の子要素を見つける方法

は、私は、ID「LeftScrollableDiv」とdiv要素を持っていると私はそれの下で最初の子要素を見つけようとしています:

$("#LeftScrollableDiv:first-child"); 

<div id="LeftScrollableDiv:first"> 
    <table></table> 
</div> 

をしかし、結果はNULLです。どんな助け?

+5

'$( '#LeftScrollableDiv')子供()最初の()' – techfoobar

+0

ます。http:。。/

$('#LeftScrollableDiv').children()[0] 

は最後の要素を取得するには:

は、最初の要素を取得するには/api.jquery.com/はあなたの友人です... – Christoph

答えて

41
$('#LeftScrollableDiv').children().first(); 

API

+0

@christophはフォーマットに感謝します;) – rsplak

10
$("#LeftScrollableDiv > :first-child"); 
4

その対象が親の最初の子である場合:first-childチェック。この場合、親の最初の子であるidが#LeftScrollableDivの要素を選択しようとしています。 :セレクタはすべて前の選択をフィルタリングするだけで、新しい要素は選択しません。

残念ながら、.firstChildメソッドがjQueryにないため、常にすべての子を選択してから最初のものを取り出す必要があります。それを行うには

可能セレクタは次のとおりです。

"#LeftScrollableDiv > :first" 

Which is far more efficient than > :first-child

1

以下は私のために動作しませんでした:

$('#LeftScrollableDiv').children().first(); 

あなたが同じことを見つけた場合、あなたは、配列のような子供()メソッドによって返されるオブジェクトを扱うことができます。

$('#LeftScrollableDiv').children()[$('#LeftScrollableDiv').children().length-1] 
関連する問題