从数组中检索jQuery元素

时间:2015-11-10 16:46:33

标签: javascript jquery

我将jQuery元素存储在一个数组中,我需要检索它们。

我现在正在这样做

var arr = [];

arr.push( $(someElement) );

然后我尝试通过执行以下操作来检索它:

arr.indexOf($(someElement)); 

但它并不起作用,因为所有jQuery元素看起来都相同e.fn.e.init[1]

我宁愿不为每个人命名(键),因为我有很多元素,如果我能像我试图的那样引用它们,那对我来说会更好。

你会怎么做?

1 个答案:

答案 0 :(得分:0)

为什么要将jQuery对象存储在数组中?您无法保存jQuery对象以保留其状态,因为JQuery对象只是选择器选择的DOM元素的包装器。如果DOM发生更改,那么这些更改将由jQuery对象反映出来。如果要保留旧值,则应存储要保留的属性,而不是整个jQuery对象。或者,您也可以将jQuery字符串存储在数组中:

var arr = [];

arr.push(someElement);

如果需要,您可以查询您的元素是否仍包含在数组中

 if (arr.indexOf(someElement)){
    $(someElement).dostuff......
 }