2010-10-17 19 views
6

En pocas palabras: el objeto jQuery es un patrón compuesto. ¿Cómo agrego objetos jQuery a él?Cómo agregar objetos jQuery al objeto compuesto jQuery

Un ejemplo:

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

...

Sé que quiero crear un nuevo objeto jQuery JQ tal que se compone de E1 y E2. Quiero ser capaz de hacer algo como lo siguiente:

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

¿cómo puedo hacer esto?

Por cierto, me doy cuenta de que podría haber seleccionado # element1 AND # element2 para empezar, eso no es de lo que estoy hablando.

Respuesta

7

Puede utilizar jQuery's .add() method:

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

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

Devuelve un nuevo objeto jQuery en lugar de modificar el original, por lo que necesita para sobrescribir el original si desea volver a utilizar la misma variable.


EDIT: Tenga en cuenta que también puede use jQuery.merge(), que va a modificar el original, pero tendrá que pasar en una matriz de los elementos DOM en lugar de los objetos jQuery.

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

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

rockin gracias jsFiddle mucho –

+0

mostrando esta técnica (para cualquiera que busque en esto en el futuro): http://jsfiddle.net/yjtEb/ –

+0

@George - De nada. – user113716