이 jQuery 선택기는 어떤 작업을 수행 할 사람이 있습니까? (1) EQ 객체에 2 TD 요소를 얻을 것이다,하지만 선택의 끝 부분에 언급 된 2 DIV 년대는 무엇을 할 것인가 :find 메서드에서 사용 된 이상한 jQuery 선택자
object.find('td:eq(1) div div');
은 내가 TD는 것을 알고있다?
이 jQuery 선택기는 어떤 작업을 수행 할 사람이 있습니까? (1) EQ 객체에 2 TD 요소를 얻을 것이다,하지만 선택의 끝 부분에 언급 된 2 DIV 년대는 무엇을 할 것인가 :find 메서드에서 사용 된 이상한 jQuery 선택자
object.find('td:eq(1) div div');
은 내가 TD는 것을 알고있다?
이 첫 번째 부분 (즉, 당신이 :nth-child
을 원하는)하지 당 행, 전체 개체에 2 <td>
를 찾습니다. div div
부분은 divs 2 레벨을 셀렉터 내부 깊숙한 곳에서 찾습니다. 여기
는 2 DIV 년대는 선택의 끝이 할 에서 참조 무슨 object.find('td:eq(1) div div');
<tr>
<td><td>
<td>
<div>
<span> <!-- Or any wrappers, etc -->
<div>Found me!</div>
</span>
</div>
</td>
</tr>
행에서 두 번째 테이블 셀을 찾습니다 (나는 0- 기반으로 생각합니다). 그런 다음 해당 셀 안의 div 안에 div가 있습니다. 그래서 같은
:
<tr>
<td>
Not me
</td>
<td>
<div class='parent'>
<div class='child'>
This stuff here!
</div>
</div>
</td>
의 일치하는 예입니다?
div의 div를 찾으십시오. (CSS 선택기와 동일)
비표준 jQuery 선택기는 일반적으로 피해야합니다.
만 표준 CSS 선택기를 사용하는 경우, jQuery를 셀렉터가 빠른 내장 된 최신 브라우저의 querySelectorAll
기능 해제 작업을 전달할 수 있습니다,하지만 당신은 :eq
를 사용하는 경우가 상대적으로 느린 네이티브 자바 스크립트 지글 지글 선택 라이브러리를 통해 가야 .
그래서 당신이 그것을 철자를 선호 있습니다
object.find('td').eq(1).find('div div');
일을, 그것은 0을 기준으로. –
'div'는 부모'div'의 바로 아래에있을 필요는 없으며 다른 div의 부모와 두 번째 테이블 셀을 가진 모든 div가 일치한다는 것을 잊지 마십시오. http://api.jquery.com/descendant-selector/와 http://api.jquery.com/child-selector/의 차이는 처음에 나를 던졌습니다. – Mark
예, 사실입니다. 나는 아직 커피를 마시지 않았으므로 기꺼이 타이핑하는 것이 너무 많았다. :-) – Pointy