2013-12-20 4 views
0

어떻게 selector given in this answerJQuery를 사용하여 DOM에서 각 하위 노드를 찾는 방법은 무엇입니까?

$('div:not(:has(*))') 

는 HTML의 특정 블록에있는 가장 낮은 수준 요소를 찾기 위해 사용할 수 있습니까? &가 lorem ipsum의 텍스트 및 LI 포장 "A 목록 항목"

<P style=""> 
<SPAN style="font-family:'sans-serif'">More:</SPAN> 
<SPAN style="font-family:'sans-serif'">at. Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nulla facilisis at vero eros et accumsan et</SPAN></P> 
<ul> 
    <li>A list item</li> 
</ul> 

가 그럼 난 세 "추가"를 포장 스팬을 한 요소 반환 할 예를 들어, 내 HTML이있는 경우. 얼마나 더 세분화 된 선택을 통합하는 잘 모르겠어요

function loadElements (guideline) { 
    var url = guideline.import + "/input.html", 
     text, 
     i = 0, 
     el; 
    console.log("url is " + url) 
    $.get(url, function(html) { 
     $(html).filter('div').each(function() { 
     i ++; 
     text = i + "<br/>" + $(this).text(); 
     $("#source_elements").append(text); 
     }); 
    }); 
} 

:

내 현재 코드는 내가 함께 일하고 생성 된 태그 수프 충분히 세분화하지 사업부 수준에서 페이지 덩어리를 잡고 이리.

답변

2

선택기를 약간만 변경하면됩니다. 먼저 body 태그를 가져와 <head>에서 필요없는 요소를 가져 오지 않도록하십시오. 그런 다음 태그 (*)가없는 모든 태그 (*)를 가져 오려고합니다.

Demo

$('body').find('*:not(:has(*))'); 
관련 문제