2010-04-22 1 views
1

예를 들어, 상위 요소의 색인에서 하위 요소의 색인을 검색하는 방법은 무엇입니까? 위의 같은이있는 경우JQuery를 사용하여 부모의 하위 배열에서 색인을 더 잘 찾는 방법은 무엇입니까?

+2

더 나은? –

+0

모른다, 어떤 방법 으로든 환영합니다 – lovespring

+0

당신이 찾고있는 사용 시나리오는 무엇입니까? 인덱스를 원하는 자식 요소의 특정 속성을 갖고 있습니까? –

답변

5
<ul> 
    <li>this</li> 
    <li>is</li> 
    <li>ul</li> 
</ul> 

<ul> 
    <li>this</li> 
    <li>is</li> 
    <li>another</li> 
    <li>ul</li> 
</ul> 

, 당신이 jQuery를 같이 할 수있는 :

$(function(){ 
    $('li').click(function(){ alert('the index is '+$(this).index()) }) 

}) 

이 부모 UL에 따라 리 요소의 인덱스를 알려줍니다

인덱스에

이상() here.

+0

나는 jQuery의이 방법을 모른다, 고마워 ~ – lovespring

1

IE가 아닌 브라우저에서 요소 사이의 공백은 텍스트 노드로 간주됩니다 (IE에서는 해당하지 않음). 이는 후속 요소의 색인에 영향을 미칩니다. 기본 필터링 공백 노드 아래, 모든 브라우저에서 기능을 동일한 결과를 제공, 그리고 그 경우에 당신이 원하는 무엇을 그 (것)들을 포함하는 선택적 매개 변수를 가지고하려면보다

function indexOfNode(node, includeWhitespace) { 
    var index = 0, n = node; 
    while ((n = n.previousSibling)) { 
     if (includeWhitespace || n.nodeType != 3 || !/^\s*$/.test(n.data)) { 
      ++index; 
     } 
    } 
    return index; 
} 
관련 문제