如何将jQuery对象添加到jQuery复合对象

Geo*_*uer 6 javascript jquery

简单地说:jQuery对象是一个复合模式.如何添加jQuery对象?

一个例子:

var e1 = $('#element1');
var e2 = $('#element2');
Run Code Online (Sandbox Code Playgroud)

...

我知道想要创建一个新的jQuery对象jq,它由e1和e2组成.我希望能够做类似以下的事情:

var jq = $();
jq.addInjQueryObjects([e1, e2]);
jq.hide();
Run Code Online (Sandbox Code Playgroud)

我该怎么做呢?

顺便说一句,我意识到我可以刚开始选择#element1 AND#element2,这不是我所说的.

use*_*716 7

你可以使用jQuery的.add()方法:

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

var jq = $();
jq = jq.add(e1).add(e2);
jq.hide();
Run Code Online (Sandbox Code Playgroud)

它返回一个新的jQuery对象而不是修改原始对象,因此如果要重用同一个变量,则需要覆盖原始对象.


编辑:请注意,您也可以使用jQuery.merge(),它将修改原始,但您需要传入DOM元素的数组而不是jQuery对象.

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

var jq = $();
$.merge( jq, [e1[0], e2[0]] );
jq.hide();
?
Run Code Online (Sandbox Code Playgroud)