jQuery选择器中直接后代(>)与后代的区别是什么?

Tom*_*Tom 16 jquery jquery-selectors

这两个jQuery语句之间有什么区别?他们似乎通过获取所有子div标签来做同样的事情.

$("#mainblock div")
Run Code Online (Sandbox Code Playgroud)
$("#mainblock > div")
Run Code Online (Sandbox Code Playgroud)

Roy*_*mir 17

$("#mainblock > div") =孩子只有水平

$("#mainblock div") =所有孩子+ desendents.


Pra*_*ana 6

看看jQuery 选择器

Child Selector ("parent > child") - Hierarchy选择由"parent"指定的元素"child"指定的所有直接子元素.

Descendant Selector ("ancestor descendant")- 层次结构选择作为给定祖先的后代的所有元素.


Tar*_*run 5

$("#mainblock div")
Run Code Online (Sandbox Code Playgroud)

这一个针对“#mainblock”中的所有 DIV,无论它是“#mainblock”的直接子代,还是主块的子代的子代等等。

$("#mainblock > div")
Run Code Online (Sandbox Code Playgroud)

这将仅针对“#mainblock”的直接子 DIV,而忽略其他 DIV。如果您只有直接的孩子,这个比上面的要快。因为它不是试图在孩子的其他元素中找到。