jquery嵌套选择器或.find()

时间:2015-08-14 07:39:01

标签: javascript jquery

我想点赞一个jquery代码片段。我打算选择一个查找子元素。我知道如何通过检查两种方式可以实现的长度来做到这一点。

$("#parentElement #childElement").length

$("#parentElement").find("#childElement").length

当孩子存在或不存在时,他们都将返回1或0依赖。但是,请你建议哪个更优化,更快和更好。在编码标准方面更好。

2 个答案:

答案 0 :(得分:0)

非常 此操作不太可能导致实际的性能问题。但回答问题:

到目前为止,使用jQuery执行此操作的最快方法是

if ($("#childElement").length)

...除非你真的想忽略childElement,如果它不在parentElement里面。这是您的示例与上述内容之间的唯一区别。

没有jQuery会更快:

if (document.getElementById("childElement"))

再一次,它根本不重要。

答案 1 :(得分:-1)

  

你能否建议哪个更优化,更快更好?在编码标准方面更好?

查找速度更快。你可以在这里阅读更多相关信息: Learn optimize Jquery

来自文档:

  

.find()方法更快,因为第一个选择是在不经过Sizzle选择器引擎的情况下处理的 - 使用document.getElementById()处理仅ID选择,这非常快,因为它是浏览器的原生。