网站推广.NET

网站推广.NET

jQuery的后代选择器ancestor descendant介绍和示例解析

来源:互联网

jquery的ancestor descendant选择器(后代选择器)用于匹配ancestor元素内所有的descendant元素,将其封装为jquery对象并返回。

注意:选择器descendant的查找范围是"ancestor元素"的后代元素,不管是"ancestor元素"的子辈元素,还是"孙子辈",以及更"后辈"的元素均可。

如果你只想查找子辈元素,请使用子代选择器(parent > child)。

语法

// 这里的ancestor表示具体的祖先选择器// 这里的descendant表示具体的后代选择器jQuery( "ancestor descendant" )

参数

参数 描述

ancestor 一个有效的祖先选择器。

descendant 一个有效的后代选择器。

返回值

返回封装了在符合祖先选择器的DOM元素内查找到的符合后代选择器的DOM元素的jQuery对象。

如果找不到与祖先选择器匹配的DOM元素,或者在符合祖先选择器的DOM元素内找不到符合后代选择器的DOM元素,则返回一个空的jQuery对象。

符合祖先选择器的祖先DOM元素可能有多个,在一个祖先DOM元素内也可能查找到多个后代DOM元素,返回的jQuery对象中封装了符合条件的所有DOM元素。

示例&说明

以下面这段HTML代码为例:

<p id="n1">    <p id="n2" class="test">        <span id="n3" class="a">Hello</span>    </p>    <p id="n4" class="detail">        <span id="n5" class="b codeplayer">World            <span id="n6" class="c">365mini.com</span>        </span>    </p></p>

现在,我们想要一次性查找到id为n1的标签内的所有p标签,则可以编写如下jQuery代码:

// 选择了id分别为n2、n4的2个元素$("#n1 p");如果要一次性查找到p标签内的所有span标签,则对应的jQuery代码如下(上述示例HTML中所有的span标签都包括在内):// 选择了id分别为n3、n5、n6的3个元素$("p span");当然,祖先选择器和后代选择器可以是任意有效的选择器,因此它们本身也可以是一个"祖先-后代"选择器。// 选择了id为n6的一个元素$("#n1 p.detail span.c");
ancestor