2012-01-07 8 views
3

私はこのようなものですリストを持っている:li:リスト内の特定のクラスのfirst-child?

<ul> 
    <li class="empty">bla</li> 
    <li class="item">text1</li> 
    <li class="item">text2</li> 
<ul> 

はjQueryのを経由して特定のクラスのli:first-childを例えばを選択できるようになりましたか?私は「項目」の最初の項目を選択したい、class="empty"を選択したくない

...

$('ul li.item:first-child')が機能していません。

ありがとうございます!

答えて

3

:first-childは、として定義されているため使用できません。「親の最初の子であるすべての要素を選択します。」あなたの場合はそうではありません。ただし、:firstは次のように定義されます。"最初に一致する要素を選択します。"。そして、それは動作しますがul複数あるあなたは、このいずれかを適用する場合は

$('ul li.item:first') 

http://jsfiddle.net/n4JhH/

はしかし、それは実際にはおそらく動作しません。その後、それぞれのアプリケーションに適用する必要があります$('ul').each(...) < - 私は簡単な解決策があるかどうかわかりません。

+0

ねえ、ありがとう。 – Torben

+0

@Torben Okay、cool :) '$( 'foo:first')'は 'と同じですが、' $( 'li.search_list_item'、 '.search_list' $( 'foo')。first() '。 –

+0

...複数の 'ul'を持っている場合、同じ問題が存在します。 –

-1

[編集済み]これは、ここで

$('ul li:not(.empty):first')

http://jsfiddle.net/H9rxx/

+0

-1私はこの質問に「項目のクラスを持つ最初の里」と言っているので、これを下降させました。ここのコードは、クラスが空でない場合はリストの最初の項目を取ります。 –

+0

十分なフェア!特定の問題に言及されている他の解決策があります。 –

関連する問題