你可以在以前缓存的jQuery选择器上使用nth-child选择器吗?

时间:2010-11-23 14:28:32

标签: jquery jquery-selectors

使用DOM时,我倾向于缓存一个项目,检测它是否存在,然后执行一些工作。像这样:

var $fooModules = $j('.foo-modules');

if ($fooModules .length > 0) {
    //do something.
}

但是,如何在缓存选择器中使用像nth-child这样的jQuery select?

我知道我不能这样做:

        $j($fooModules:nth-child(3n).addClass('myClass');

你做了什么,解决这个常见问题?

谢谢

-R

1 个答案:

答案 0 :(得分:4)

您可以使用.filter()使用选择器或函数进一步过滤设置,如下所示:

$fooModules.filter(":nth-child(3n)").addClass('myClass');