对于刚入门JavaScript学习jquery框架的小伙伴来说,会把find和filter方法搞混,这二者的功能完全不同,但总是分不清。如果我们想要筛选出所有需要过滤的元素,可以使用filter()方法,如果想要查询我们需要的某一个元素,可以使用find()方法,比尔问向向大家介绍jquery方法find和filter的具体区别。
filter()
将指定集合缩减为指定选择器的元素,换句话说就是同级查找,应用于所有元素。
通过所有的元素来搜索。
筛选div的class为rain的元素,是对它自身集合元素筛选。
$(".demo").filter(".demo1");//查找class为demo并且class为demo1的元素(查找的是本身)
find()
find()方法是获得当前元素集合中每一个元素的后代。
是在当前元素集合中查找,但不包括当前元素本身,就是后代查找,仅应用于子元素。
仅通过所有的子元素来搜索。
会在div元素内寻找class为rain 的元素,是对它的子集操作。
$(".demo").find(".demo1");//查找class为demo的子元素中class为demo1的元素(查找的是子元素)
以上就是jquery方法find和filter的区别,希望能帮助你理解哟~更多JavaScript学习推荐:JavaScript教程。