这是jQuery里常用的2个方法。
他们2者功能是完全不同的,而初学者往往会被误导。
现在有一个页面,里面HTML代码为;
<div>
<pclass="rain">测试1</p>
</div>
<divclass="rain">
<p>测试2</p>
</div>
①如果我们使用find()方法:
varresult =$("div").find(".rain"
);
alert(result.html());
alert(result.html());
结果:测试1
②如果使用filter()方法:
varresult =$("div").filter(".rain"
);
alert(result .html());
alert(result .html());
结果:<p>测试2</p>
find()会在div元素内寻找class为rain 的元素,是对它的子集操作
filter()则是筛选div的class为rain的元素,是对它自身集合元素筛选
filter()则是筛选div的class为rain的元素,是对它自身集合元素筛选
另外find()其实还可以用选择器表示:
var$select=$("div.rain");
明白他们的区别了吗?
本文对比了jQuery中find()和filter()方法的区别。find()用于查找子元素中符合特定条件的元素;filter()则筛选当前元素集合中符合特定条件的元素。通过实例演示了两者的不同应用场景。
170

被折叠的 条评论
为什么被折叠?



