嵌套元素的jQuery优化.find()与.children() - 将查询开始锚定到直接子节点

时间:2016-01-04 14:17:31

标签: jquery performance children

我正在尝试匹配类似

的内容
<a>
    <b>
        <c>
            <d>
    <b>
        <c>
            <d>
</a>

$("a").find("d")

我希望通过将完整路径指定为

进行优化
$("a").find("b > c > d")

但是仍然需要遍历整棵树。 我想告诉jQuery <b><a>下面。 所以我试过了

$("a").children("b > c > d")

这不起作用。 解决方案似乎是

$("a").children("b").children("c").children("d")

.find() / .children()的某些变体是否符合我对.children()的预期? 或者查询字符串的一些“锚点”,表示查询中的第一个元素是1级子级?

1 个答案:

答案 0 :(得分:1)

我发现.find()接受了

$(this).find(" > a > b > c > d")`

假设它可以在内部做我想要的,因为结果查询持续时间更短。