在使用 DOM 时,我倾向于缓存一个项目,检测它是否存在,然后执行一些工作。就像这样:
var $fooModules = $j('.foo-modules');
if ($fooModules .length > 0) {
//do something.
}
但是,我如何解决使用像 nth-child 这样的 jQuery 选择与我的缓存选择器的问题?
我知道我不能这样做:
$j($fooModules:nth-child(3n).addClass('myClass');
您如何解决这个常见问题?
谢谢
-R
最佳答案
您可以使用.filter()
使用选择器或函数进一步过滤集合,如下所示:
$fooModules.filter(":nth-child(3n)").addClass('myClass');
关于jquery - 您可以在之前缓存的 jQuery 选择器上使用第 n 个子选择器吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4256964/