孙子的选择器,或者如何将选择器锚定在已知元素上

时间:2012-05-30 19:48:58

标签: jquery jquery-selectors dom-traversal

假设我有一个元素层次结构,其根目录为#root。我可以用$('#root > * > *')来获得所有的孙子孙女。如果我已经$('#root'),我有什么方法可以做到这一点吗?

$('#root').find('* > *')绝对不是它,因为它会乐意从第一颗恒星的任何后代“开始”,而不仅仅是#root个孩子。

jQuery中是否有任何函数可以“锚定”当前元素,从它的子元素开始?它已经困扰了我一段时间,我在文档中找不到类似的东西。

1 个答案:

答案 0 :(得分:18)

使用另一个>启动查找表达式(此语法为documented):

// This is functionally the same as $('#root > * > *')
$('#root').find('> * > *')

或者两次致电.children():一次是给孩子,一次给孙子孙女:

$('#root').children().children()