2012-05-28 4 views
6

가끔 jquery를 사용하여 CSS를 테스트합니다. 그리고 종종 내가 $('.topclass div') 같은 것을 입력하고 다시JQuery CSS 선택자 e.fn.e.init

e.fn.e.init[125] 

자바 스크립트 object 포함하는 노드로 얻을 것이다

(크롬 웹 개발자 콘솔) 간단한 선택기를 사용합니다. (보통 꽤 복잡한 선택자이지만 때로는 간단합니다.)

왜이 기능을 사용할 수 있습니까? 태그가 없거나 선택자가 잘못되었다는 의미입니까?

편집 : HTML은 기본적 된 div를 중첩 (그것의 자식이 너무 div를 받고 있기 때문에 될 수 있을까?)

답변

5

그것은 당신의 선택은 너무 많은 경기를 포함 의미하며, 개발자 도구 콘솔에서 자신의 표현을 단축.

콘솔이 시도 : 당신이 a을 검사하려고하면, 당신은 ["foobar", "foobar", "foobar", "foobar", "foobar", "foobar", "foobar", "foobar", "foobar", "foobar"]을 볼 수

var a = [] 
for (var i = 0; i < 10; i++) { a.push('foobar'); } 

. 이제 좀 더 요소를 추가 :

이제
for (var i = 0; i < 100; i++) { a.push('foobar'); } 

당신이 그것을 검사하려고하면, 당신은 Array[110]을 볼 수 있습니다.

선택자가 잘못되었음을 의미하지는 않지만 더 적은 수의 요소 만 예상하면 잘못되었을 수 있습니다.

+0

예 나는 그것을 $ ('div')로 변경했고 더 높은 번호를 얻었으므로 반드시 있어야합니다. 내 선택자가 분명히 틀렸어. – Akshat