jQuery|容易混淆的first、first-child、first-of-type

first与first-child 在使用过程中容易混淆。这次我们就把他理清楚。其实这是两个概念。
first:指集合中的第一个。举例:7层楼住户的第一户。
first-child:选择器选取属于其父元素的第一个子元素。2单元下每一层的第一户。
first-of-type 选择器选取属于其父元素的特定类型的第一个子元素的所有元素。

选取第一个 <p> 元素:

$("p:first")

定义和用法

:first 选择器选取第一个元素。

注意:这个选择器只用于选取单个元素。使用

选择器选取多个元素(每个父元素一个)。

最常见的用法:与其他选择器一起使用,选取指定组合中的第一个元素(就像上面的实例)。

语法

$(":first")

样例

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script src="http://cdn.static.runoob.com/libs/jquery/1.10.2/jquery.min.js">
</script>
<script>
$(document).ready(function(){
  $("p:first").css("background-color","yellow");
});
</script>
</head>
<body>

<p>这是第一个段落。</p>
<p>这是第二个段落。</p>
<p>这是最后一个段落。</p>

</body>
</html>
image.png

first-child 选择器

选取属于 <p> 的父元素中第一个为 <p> 的元素:

$("p:first-child")

定义和用法

:first-child 选择器选取属于其父元素的第一个子元素。
注意:返回的是一个集合元素

语法

$(":first-child")

<!DOCTYPE html>
<html>
<head>
<script src="http://cdn.static.runoob.com/libs/jquery/1.10.2/jquery.min.js">
</script>
<script>
$(document).ready(function(){
  $("p:first-child").css("background-color","yellow");
});
</script>
</head>
<body>

<p>The first paragraph in body.</p>

<div style="border:1px solid;">
<p>The first paragraph in div.</p>
<p>The last paragraph in div.</p>
</div><br>

<div style="border:1px solid;">
<span>This is a span element.</span>
<p>The first paragraph in another div.</p>
<p>The last paragraph in another div.</p>
</div>

<p>The last paragraph in body.</p>

</body>
</html>
image.png

说明:
第一个黄底色是指 父body 标签下的第一个是p元素的元素。
第二个黄底色是指 父div 标签下的第一个是p元素。

first-of-type选择器(强调位置是第一个)

选取属于其父元素的第一个 <p> 元素的每个 <p> 元素:

$("p:first-of-type")

定义和用法

:first-of-type 选择器选取属于其父元素的特定类型的第一个子元素的所有元素。

语法

$(":first-of-type")

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script src="http://cdn.static.runoob.com/libs/jquery/1.10.2/jquery.min.js">
</script>
<script>
$(document).ready(function(){
  $("p:first-of-type").css("background-color","yellow");
});
</script>
</head>
<body>

<p>body 中第一个段落。</p>

<div style="border:1px solid;">
    <p>div 中第一个段落。</p>
    <p>div 中的最后一个段落。</p>
</div><br>

<div style="border:1px solid;">
    <span>这是一个 span 元素。</span>
    <p>另一个 div 中第一个段落。</p>
    <p>另一个 div 中的最后一个段落。</p>
</div>

<p>body 中最后一个段落。</p>

</body>
</html>
image.png

注意最后一个黄色p元素,它是div中的第一个p元素,但是它的位置不是第一个。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 一、样式篇 第1章 初识jQuery (1)环境搭建 进入官方网站获取最新的版本 http://jquery.co...
    凛0_0阅读 3,466评论 0 44
  • 转载自牢记31种CSS选择器用法 1 * 星号选择器用于选取页面中的所有元素,可用于快速清除所有元素的 margi...
    Icestains阅读 1,286评论 0 1
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,973评论 19 139
  • 其实平时用得多的选择器无非也就是那么几个,时间久了,许多不常用的选择器就慢慢忘记了。为了不让自己忘记这些选择器,今...
    盛夏晚清风阅读 1,875评论 0 5
  • 环境搭建 进入官方网站获取最新的版本 http://jquery.com/download/ ,这里需要注意 j...
    阿r阿r阅读 823评论 0 7