检查的最快方法是jQuery对象有任何匹配元素

时间:2011-05-18 09:15:47

标签: jquery jquery-selectors

假设我有一个巨大的树视图,一个分支在变量名为$branch,现在我想检查该分支是否包含多个元素< / strong>使用展开类。换句话说,只要找到一个匹配就应该返回布尔值。

好的,我可以使用$branch.find('.expand').length > 0执行此操作,但有没有更好的方法可以停止在第一个匹配元素上,因此会更快?

我认为使用first()会将现有的设置缩短为1,所以我会使用find()然后减少?

聚苯乙烯。正如您在示例中所注意到的那样,我使用了find()因为我想要比$branch

的孩子更深入

2 个答案:

答案 0 :(得分:1)

像这样的标准CSS选择器使用本机DOM方法querySelectorAll()。即它们运行在浏览器的本机代码中,并且速度很快。除非你有理由认为做上述事情很慢,否则我怀疑你需要担心它。

答案 1 :(得分:1)

您肯定想看一下.has()方法。

var $branchesWithExpand = $branch.has('.expand');