2010-02-15 77 views
2

子元素第一次出現我有一個像這樣的列表:最恰當的方式來選擇jQuery的

<ul id="topElement"> 
    <li></li> 
    <li> 
    <ul> 
     <li> 
     <ul> 
      <li> 
      </li> 
     </ul> 
     </li> 
    </ul> 
    <li> 

使用jQuery,什麼是最好又名最有效的方式來引用第一發生的來自#topElement的ul。

也就是說,我不希望這樣......

$("#topElement ul") 

這將樹中的每一個返回UI元素。我只想要第一個下降。

感謝,

回答

4

我認爲,如果你想第一個「UL」你的「UL」稱爲「topElement」裏面的內容發現,那麼你會想這樣的:

$('ul#topElement ul:first') 
+1

爲什麼ul#topElement? id是唯一的。 #topElement應該更快。 – David 2010-02-15 20:10:05

+0

你當然是對的,但有時我只是爲了幫助自己不會感到困惑。這不是必要的,事實上,如果你改變你的標記,它可以回來並咬你。在這種情況下,我想我只是想明確解決問題的方式。然而,我懷疑是否有任何可衡量的性能差異,因爲嘶嘶聲完全知道你對「id」值的語義的瞭解:-) – Pointy 2010-02-15 20:19:51

+0

它在框中表示它的含義。 :) – Travis 2010-02-15 20:30:56

0
$("ul#topElement:first") 
+0

我不認爲這是正確的 - 他希望第一個「ul」在最上面的「ul」下面。 – Pointy 2010-02-15 19:37:03

0

$("#topElement > li > ul:first")

1

$(「#topElement ul」)。first();

相關問題