2012-12-21 3 views
0

저는 꽤 많은 애니메이션이 포함 된 건물을 가지고 있습니다. 페이지의 모든 섹션 ID 배열을 만들어야합니다. 나는 정말로 이것을하는 방법을 모른다. 그러나 이것은 올바른 방향이라고 확신한다. 먼저 값을 얻으려고합니다 :모든 섹션 ID의 jquery에 배열을 만듭니다.

var $find = $('body').find('section[id]'); 

출력을 경고하고 객체 객체를 얻었습니까? 누군가 나를 올바른 방향으로 이끌 수 있습니까? 감사

+0

섹션 ID가 – Techie

+0

이고 html5 섹션이 – EZDC

+0

인 점은 무엇을 의미합니까? – Techie

답변

1

당신은 그것은 모든 섹션 ID를 넣어 것입니다 jQuery를 map()

Live Demo

ids = $('body').find('section').map(function() { 
    return this.id; 
}) 

$.each(ids, function(idx, el) { 
    alert(el); 
})​ 
+0

이것은 ID 배열을 생성하지 않습니다. 또한 ID가없는 페이지의 섹션 요소와 일치합니다. –

+0

방금 ​​내 대답을 업데이트 한 모습을 보입니다. @JasonWhitted – Adil

+0

결과 배열에 id 값이없는 섹션 요소에 대한 빈 항목이 포함되어 있지만 더 좋을 수도 있습니다. 정부 업무를 위해 충분히 닫습니다. :) –

1

당신은 아래의 코드를

var IDs = []; 
$('body').find("section").each(function(){ IDs.push(this.id); }); 

을 시도 할 수 있습니다 사용할 수 있습니다 idsarray 만들려면 ID 배열에.

1

이렇게하면 모든 ID의 배열이 만들어집니다.

var arr = $.map($("section[id]"), function(o, i){ 
    return o.id; 
}); 
+0

함수에서의 인수는 무엇입니까? – EZDC

+0

map 함수에는 몇 가지 선택적 매개 변수가 있습니다. 첫 번째는 반복의 현재 개체입니다. 두 번째는 해당 개체의 인덱스입니다. http://api.jquery.com/jQuery.map/ –

1

질문에 답변이 포함되어 있습니다. var $find은 이미 모든 섹션에 대한 ID가 포함 된 개체입니다. 다음 코드를 참조하십시오 :

​$sections = ​$("body").find("section"); 
$sections.each(function(){ 
    console.log($(this).attr("id")); 
}); 

사항 확인 this 바이올린 대한 추가 정보를 원하시면.

관련 문제