为了账号安全,请及时绑定邮箱和手机立即绑定

在jQuery中选择后代元素的最快方法是什么?

在jQuery中选择后代元素的最快方法是什么?

红颜莎娜 2019-12-09 09:27:28
据我所知,有许多方法可以选择jQuery中的子元素。//Store parent in a variable  var $parent = $("#parent");方法1 (通过使用范围)$(".child", $parent).show();方法2 (find()方法)$parent.find(".child").show();方法3 (仅对于直系子女)$parent.children(".child").show();方法4 (通过CSS选择器) -@spinon建议$("#parent > .child").show();方法5 (与方法2相同) -根据@Kai$("#parent .child").show();我不熟悉能够自己进行调查的配置文件,因此,我很乐意看到您要说的话。附言:我知道这可能是这个问题的重复,但并未涵盖所有方法。
查看完整描述

3 回答

?
Cats萌萌

TA贡献1805条经验 获得超9个赞

方法1

使用jQuery不能更短和更快。此调用直接进入$(context).find(selector)方法2,由于优化),进而调用getElementById

方法二

这样做是一样的,但是没有一些不必要的内部函数调用。

方法3

using children()比using快find(),但是,当然,它children()只会找到根元素的直接子元素,而find()会自上而下地搜索所有子元素(包括子子元素)

方法4

使用这样的选择器,必须慢一些。由于sizzle(这是jQuery的选择器引擎)从右到左起作用,因此它将.child首先匹配所有类,然后再查找它们是否是id'parent'的直接子代。

方法5

正确地说$(context).find(selector),由于jQuery函数内的某些优化,此调用也将创建一个调用,否则也可能会经过(slower)sizzle engine


查看完整回答
反对 回复 2019-12-09
  • 3 回答
  • 0 关注
  • 909 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信