索引JQuery中$返回的数组

时间:2012-05-29 13:44:11

标签: javascript jquery arrays

$('.aClass')[index].addClass('newClass');

这就是我想要做的,但它不起作用,而且它在它之后破坏了代码。 我做错了什么?

1 个答案:

答案 0 :(得分:8)

当使用这样的索引时,它返回DOM元素,因此没有jQuery方法。

使用.eq()代替在仍被jQuery 包装时返回该索引处的DOM元素:

//as a function call
$('.aClass').eq(index).addClass('newClass');

还有a selector :eq,在形式和用法方面与方法版本略有不同。索引是选择器字符串的一部分,因此如果使用动态值,则必须剪切字符串:

//the selector version:
$('.aClass:eq('+index+')').addClass('newClass');

另外的信息:你所做的是类似于.get(),它在该索引处返回DOM元素未包装在jQuery 中:

//the same thing
$('.aClass').get(index)
$('.aClass')[index]