2012-08-22 24 views
0

我想選擇與jQuery父元素的所有子元素(除了第一個)和我有下面..選擇所有但父的第一個子帶的ID,然後應用動作

$("li:not(:first-child)"); 

但我不知道如何才能將它應用到某個父母ID,這樣的工作會是這樣嗎?

$('#myID').("li:not(:first-child)"); 

如果是這樣,我再想各自<li>標記之前添加元素。那麼我能做到這一點嗎?

$('#myID').("li:not(:first-child)").before('<li>Test</li>'); 

我猜上面的東西是錯的,因爲它不工作。

+0

你是否想要找到'#myID'的所有後代,它們不是它們各自父代的第一個孩子,或者只有第一個孩子'#myID'的孩子? –

+0

只希望#myID的孩子。 :) – Brett

回答

5

關閉,只是通過在選擇方面:

$("li:not(:first-child)", "#myID") 

http://api.jquery.com/jQuery/

jQuery(selector [, context]) 

selector: A string containing a selector expression 

context: A DOM Element, Document, or jQuery to use as context 

編輯: 我最初的回答假設你有孩子的李內不超過華里。如果你嚴格地只希望選擇孩子,使用>

$("#myID > li:not(:first-child)") 
1

簡單:使用:gt()help選擇:

只是不喜歡它:demo fiddle

$("#myID li:gt(0)").before('<li>Test</li>'); 

如果你關心速度:):

$("#myID").find("li:gt(0)").before('<li>Test</li>'); 

或類似:demo fiddle

$("#myID li:not(:first-child)").before('<li>Test</li>'); 
1

有不同的解決方案:

$("li:not(:first-child)", "#myID"); // see @SiGanteng answer 

$("#myID li:not(:first-child)"); 

$("#myID").find("li:not(:first-child)"); 
1

假設#myIDulol元素,另一種可能的方式來獲得所有的孩子,但首先是

$('#myID').children().slice(1) 
相關問題