2010-10-17 13 views
6

Po prostu: obiekt jQuery jest złożonym wzorem. Jak dodać do niej obiekty jQuery?Jak dodać obiekty jQuery do obiektu kompozytowego jQuery

Przykład:

var e1 = $('#element1'); 
var e2 = $('#element2'); 

...

wiem chcesz utworzyć nowy obiekt jQuery jq taki sposób, że składa się z E1 i E2. Chcę móc wykonać następujące czynności:

var jq = $(); 
jq.addInjQueryObjects([e1, e2]); 
jq.hide(); 

Jak to zrobić?

Przy okazji, zdaję sobie sprawę, że mogłem właśnie wybrać element # element1 i # element2 na początku, nie o tym mówię.

Odpowiedz

7

Można użyć jQuery's .add() method:

var e1 = $('#element1'); 
var e2 = $('#element2'); 

var jq = $(); 
jq = jq.add(e1).add(e2); 
jq.hide(); 

Zwraca nowy obiekt jQuery zamiast modyfikowania oryginału, więc trzeba zastąpić oryginalny jeśli chcesz ponownie użyć tej samej zmiennej.


EDIT: Zauważ, że można też use jQuery.merge(), który zmodyfikuje oryginał, ale trzeba przejść w tablicy elementów DOM zamiast obiektów jQuery.

var e1 = $('#element1'); 
var e2 = $('#element2'); 

var jq = $(); 
$.merge(jq, [e1[0], e2[0]]); 
jq.hide(); 
​ 
+0

rockin' dziękuję –

+0

jsfiddle pokazując tę ​​technikę (dla każdego, kto patrzy na to w przyszłości): http://jsfiddle.net/yjtEb/ –

+0

@George - Proszę bardzo. – user113716

Powiązane problemy