2012-08-14 3 views
5

다음 스 니펫이 작동하지 않습니다.jquery add 함수가 예상대로 작동하지 않습니다.

var empty = $(); 
var divs = $("div"); 
empty.add(divs); 

거기 HTML에서 div 요소이며 div의에 올바르게 추가됩니다. 그러나 divs 컬렉션은 jquery 객체에 추가되지 않습니다. 아이디어가 잘못되었습니다.

+0

[문서화 됨] (http : //api.jquery.c 옴/추가 /). – alex

답변

22

.add 원래 개체는 변경되지 않습니다. 시도 :

empty = empty.add(divs); 
+1

처음에는 jQuery의 처음 몇 가지 단점 중 하나입니다. –

+0

+1. 그것은 나를 여러 번, 여러 번 얻었습니다. – aefxx

+1

[documentation] (http://api.jquery.com/add/)에서 새로운 jQuery 컬렉션을 반환한다는 것이 맞습니다. – alex

3

당신이 할 수있는

JQuery와 문서 당
var empty = $.extend($(), $('div')); 
0

,

.add() 방법은 새로운 세트를 만들고 원래 세트 나뭇잎 때문에, 추가 된 요소를 저장하지 않습니다 다음 pdiv 변경되지 않음 :

var pdiv = $("p"); 
pdiv.add("div"); // WRONG, pdiv will not change 
관련 문제