当前位置: 首页 > 中文手册 > jQuery 选择器(:first-child)详解

jQuery 选择器(:first-child)详解

jQuery的:first-child选择器用于匹配作为父元素的第一个子元素的元素,将其封装为jQuery对象并返回。:first-child选择器等价于:nth-child(1)选择器

与该选择器相对的是:last-child选择器,用于匹配作为父元素的最后一个子元素的元素。

注意:first-child选择器与:first选择器的不同之处在于:
:first选择器只匹配一个元素,并且是匹配到的元素中的第一个元素;
:first-child选择器则需要判断匹配到的元素是否是其父元素的第一个子元素,如果是就保留,否则将被舍弃。

语法

jQuery1.1.4 新增该选择器。

// 这里的selector表示具体的选择器
jQuery( "selector:first-child" )

参数

参数描述
selector一个有效的选择器。

返回值

返回封装了匹配作为父元素的第一个子元素的元素的jQuery对象。

如果找不到任何相应的匹配,则返回一个空的jQuery对象。

jQuery先会根据选择器selector去查找所有匹配的元素,再判断它们是否是自己父元素的"长子"(第一个子元素),如果是就保留,否则就舍弃掉该元素。

示例&说明

以下面这段HTML代码为例:

<div id="n1">
    CodePlayer
	<div id="n2">
		<ul id="n3">
			<li id="n4">item1</li>
			<li id="n5" class="c">item2</li>
			<li id="n6" class="c">item3</li>
		</ul>
	</div>
	<div id="n7">
		<ul id="n8">
			<li id="n9">item1</li>
			<li id="n10">item2</li>
		</ul>
	</div>
</div>

现在,我们查找作为父元素的"长子"的div标签,则可以编写如下jQuery代码:

// 选择了id分别为n1、n2的两个元素
// n1是父元素body标签的"长子",n2是父元素n1的"长子"
// 虽然在n1之内、n2之前有文本内容,但文本内容不算子元素,因此n2仍然是n1的"长子"
$("div:first-child");

接着,查找所有匹配ul li的元素,再查找其中那些元素是父元素的"长子",则可以编写如下jQuery代码:

// 选择了id分别为n4、n9的两个元素
$("ul li:first-child");

查找所有包含类名c的li标签,再查找这些元素是否是父元素的"长子",对应的jQuery代码如下:

// 没有选择任何元素,返回一个空的jQuery对象。
// 虽然包含类名"c"的li标签有n5、n6两个元素,但它们都不是父元素的"长子",因此无法匹配
$("li.c:first-child");

运行代码

15 0
我们认为: 用户的主要目的,是为了获取有用的信息,而不是来点击广告的。因此本站将竭力做好内容,并将广告和内容进行分离,确保所有广告不会影响到用户的正常阅读体验。用户仅凭个人意愿和兴趣爱好点击广告。
我们坚信:只有给用户带来价值,用户才会给我们以回报。
CodePlayer技术交流群1CodePlayer技术交流群1

帮朋友打一个硬广告:

P2P网贷系统(Java版本) 新年低价大促销,多年P2P技术积累,系统功能完善(可按需定制,可支持第三方存管、银行存管),架构稳定灵活、性能优异、二次开发快速简单。 另可提供二次开发、安装部署、售后维护、安全培训等一条龙服务。

外行看热闹,内行看门道。可以自信地认为,在系统设计上,比市面上的晓风、迪蒙、方维、绿麻雀、国融信、金和盛等P2P系统要好。
深圳地区支持自带技术人员现场考察源代码、了解主要技术架构,货比三家,再决定是否购买。

也可推荐他人购买,一旦完全成交,推荐人可获得实际售价 10% 的返现。
有意向者,详情请 点击这里 联系,工作时间立即回复。