使用index从jQuery数组返回jQuery对象(而不是DOM)

时间:2013-05-22 22:23:00

标签: javascript jquery arrays indexing

我有一个<span>的jQuery数组,我想把它们中的一个作为jQuery对象,这样我就可以在其上添加其他方法。像$mySpans[2](返回字符串)或$mySpans.get(2)(直接返回DOM元素)之类的东西。

我知道这会奏效:

$($mySpans[2]).someJQueryMethod( ... );

......但似乎有点多余。这样做的正确方法是什么?

2 个答案:

答案 0 :(得分:9)

像这样:

$myspans.eq(2).method();

答案 1 :(得分:5)

jsFiddle Demo

您将要使用eq。请注意,它将返回该索引处的jQuery对象包装元素,因此如果您只有一个匹配,则应使用0(其后2将返回该集合的第三个)。

var $thirdMatch = $mySpans.eq(2);//== jQuery object with third match
var htmlElement = $thirdMatch[0];//== actual dom element
var matchedHtml = $thirdMatch.html();// call some jQuery API method

为了便于阅读,存储jQuery对象以使用$variableName是常见的做法。