2012-02-08 2 views
1

:odd 필터 또는 :nth-child(odd) 선택기를 사용하여 jQuery를 사용하여 테이블에서 홀수 행을 선택하는 두 가지 쉬운 방법이 있습니다.jQuery Odd : CSS 또는 jQ 선택 도구?

$('table tr').filter(':odd') 
$('table tr:nth-child(odd)') 

각 방법의 장점과 단점은 무엇입니까? 주로 실행 속도 및 브라우저 지원 측면에서 궁금합니다. http://docs.jquery.com/Browser_Compatibility.filter(':odd')와 첫 번째 방법은 대부분의 아마 느린

답변

3

가 추가 메서드 호출을 사용하며이를 사용하기 때문에, : jQuery를 모든 현대 틱 브라우저에서 잘 작동으로

+0

감사합니다. jQuery가 브라우저에서 지원되지 않는 경우 선택기를 처리할지 확신하지 못했습니다. 당신은 그 관심사에 대한 근원지에 대한 링크가 있습니까? :) – Joe

+0

@ Joe : 모두 앞 페이지에 있습니다. :) – BoltClock

1

브라우저 지원은 문제가되지 않을한다 비표준 선택자. jQuery는이 경우 모든 것을 처리해야한다.

두 번째 방법은 주어진 셀렉터가 유효한 CSS이므로 Selectors API를 구현하고 :nth-child() 가상 클래스를 지원하는 최신 브라우저에서 잠재적으로 빠를 수 있으므로 선택기는 jQuery가 아닌 최신 브라우저의 선택기 엔진에 의해 평가됩니다 . 그러나 다른 브라우저에서는 모르겠지만 적어도 두 번째 메소드 호출이 덜 효율적이기 때문에 부분적으로 더 효율적일 것입니다.

어느 쪽이든 어느 방법 으로든 실제 (실질적인) 이점이나 단점은 없습니다. 사실, 이론적으로 만 대답하고 있습니다. 아무 것도지지 할 기준이 없습니다. 어쨌든 jQuery polyfills가 이전 브라우저 용 :nth-child() 셀렉터이므로 브라우저 호환성에 대해 걱정할 필요가 없습니다.