jquery筛选器
jQuery筛选器概述
jQuery筛选器用于从DOM元素集合中进一步筛选符合条件的元素,主要通过filter()、find()、has()等方法实现。这些方法允许基于选择器、函数或特定条件进行精确筛选。
常用筛选方法
filter()
通过选择器或函数筛选当前集合中的元素:
$("div").filter(".active"); // 筛选class为active的div
$("div").filter(function(index) {
return index % 2 === 0; // 筛选偶数索引的div
});
find()
在当前元素的后代中查找匹配的元素:

$("#parent").find(".child"); // 查找id为parent的元素下所有class为child的后代
has()
筛选包含特定子元素的元素:
$("div").has("p"); // 筛选包含<p>元素的<div>
链式筛选与组合
jQuery支持链式调用,可组合多个筛选方法:

$("ul.list")
.find("li")
.filter(":visible")
.css("color", "red"); // 筛选可见的li并修改样式
其他实用筛选器
eq()
选择指定索引位置的元素:
$("li").eq(2); // 选择第三个li(索引从0开始)
not()
排除匹配条件的元素:
$("div").not(".exclude"); // 筛选class不为exclude的div
注意事项
- 筛选器性能受DOM结构影响,复杂选择器可能降低速度。
- 优先使用原生CSS选择器(如
$("div.active"))替代.filter(),效率更高。 - 动态生成的元素需确保在DOM加载完成后执行筛选操作。






