2012-08-22 2 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>'); 

하는 경우 당신은 속도에 대해 우려하고 있습니다 :) :

,210
$("#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

#myID 가정은 ul 또는 ol 요소, 모든 어린이를 얻을 수있는 또 다른 가능한 방법이지만 첫 번째는

입니다
$('#myID').children().slice(1) 
관련 문제