2010-10-17 10 views
6

In poche parole: l'oggetto jQuery è un modello composito. Come aggiungo oggetti jQuery ad esso?Come aggiungere oggetti jQuery all'oggetto composito jQuery

Un esempio:

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

...

So voglio creare un nuovo oggetto jQuery JQ in modo tale che si compone di E1 ed E2. Voglio essere in grado di fare qualcosa di simile al seguente:

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

come si fa?

A proposito, mi rendo conto che avrei potuto semplicemente selezionare # element1 AND # element2 per cominciare, non è quello di cui sto parlando.

risposta

7

È possibile utilizzare jQuery's .add() method:

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

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

restituisce un nuovo oggetto jQuery invece di modificare l'originale, quindi è necessario sovrascrivere l'originale, se si vuole riutilizzare la stessa variabile.


EDIT: noti che è possibile anche use jQuery.merge(), che modificherà l'originale, ma avrete bisogno di passare in una serie di elementi DOM invece degli oggetti jQuery.

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

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

rockin' grazie mille –

+0

jsfiddle che mostra questa tecnica (per tutti coloro che guardando questo in futuro): http://jsfiddle.net/yjtEb/ –

+0

@George - Non c'è di che. – user113716