2013-07-17 4 views
0

요소의 속성 내용을 가져올 jQuery 선택기가 있습니까?하지만 속성이 비어 있으면 요소 자체의 내용을 가져 옵니까? "| H2 h2.alt"(그래서, 아니 "고도"태그 경우 요소 자체를 선택)jQuery empty "또는"selector?

<h2 alt="apple">Hello, world</h1> 
<h2>banana</h2> 

는 기본적으로, 나는 그것이 뭔가를하고 싶은 예를 들어, 나는 다음과 같은 HTML을 말한다. 이 예에서

, 나는 목록에 다음을 얻을 수 있도록하려면 :

apple 
banana 

그 이유는 내가 당신의 jQuery 셀렉터를 제공 할 수있는 jQuery를 TOC 플러그인을 사용하는 것입니다 ToC를 가져올 요소 (예 : "h1, h2, h3"). ToC 텍스트를 내용/머리글 텍스트와 다르게하려면 일부 요소에서 대체 특성을 지정할 수 있어야합니다.

도움이 될 것입니다.

감사합니다.

편집 :

그냥 명확히 - 그것은 선택 될 것, 그것이 내가 플러그인에 통과해야 뭔가 때문에. (예 : "h2.alt, h3, h4.alt | h4"). 실제 코드 일 수는 없습니다.

감사합니다.

답변

2

다음은 FIDDLE

$('h2').each(function (id, value) { 
    var altAttr = $(this).attr('alt'); 
    if (altAttr === undefined) alert($(this).text()); 
    else alert(altAttr); 
}); 
+0

감사합니다. 나는 명확하게하기 위해 나의 질문을 편집했다. 선택기가 있으면 기본적으로 선택기가 필요합니다. –

1

의 할 수 있습니다

var results = $('h2').map(function(){ 
    var $this = $(this), alt = $this.attr('alt') 
    return alt == undefined ? $(this).text() : alt 
}).get(); 

데모 : 응답에 대한 Fiddle

+0

응답 해 주셔서 감사합니다. 나는 명확하게하기 위해 나의 질문을 편집했다. 선택기가 있으면 기본적으로 선택기가 필요합니다. –

+2

선택자가 될 수 없습니다. 요소를 필터링하는 데 사용하지 않으므로이 속성을 사용하여 값을 가져 오려고합니다. –

관련 문제