jQuery 选择器与隐式迭代

简介: jQuery 选择器与隐式迭代

      我们在学HTML基础时就学过了各种 CSS 选择器,有id选择器,类选择器,标签选择器,子代选择器,后代选择器,交集选择器,并集选择器,伪类选择器,结构伪类选择器 等等。以及在原生 JS 中我们学到的获取元素的种种方法。


在我们的jQuery,也有很多选择器来获取元素,并且做了统一获取标准的封装


目录:


            一: jQuery 基础选择器:


                  两个例子


             二: jQuery 筛选选择器:


                   两个例子


              三:隐式迭代:


                            隐式迭代使所有 li 变色案例:


jQuery 基础选择器:

基本格式: $ (' css选择器 ')


名称 用法 描述

通配符选择器 $(' * ') 获取所有元素

标签选择器 $(' div ') 获取同一类标签的元素

ID选择器 $(' #div ') 获取指定ID的元素

类选择器 $(' .div ') 获取指定类的元素

后代选择器 $(' ul li ') 获取后代中的某一类元素

子代选择器


$(' ul>li ') 获取子代中的某一类元素

交集选择器 $(' li.name ') 获取交集元素

并集选择器 $(' li,p,div ') 获取多个元素

下面举两个例子:

1.获取ul下的li标签,结果为获取到了两个li,存在伪数组中


<body>

<ul>

  <li></li>

  <li></li>

</ul>

 <script>

   console.log($('ul li'));

 </script>

</body>


2.获取所有的标签,页面所有的标签都被存放在了伪数组中


<body>

   <div></div>

   <p></p>

   <ul>

      <li></li>

      <li></li>

   </ul>

   <script>

        console.log($('*'));

   </script>

</body>



jQuery 筛选选择器:

注意:在 jQuery 的筛选选择器中与 css 的结构选择器不同之处在于它的index是从0开始的


语法 用法( 以li元素为例 ) 描述

:first $(' li:first ') 获取第一个li元素

:last $(' li:last ') 获取最后一个li元素

:eq(index) $(' li:eq(1) ') 在获取到的li元素中,索引为1的li,注意索引从0开始

:odd $(' li:odd ') 在获取到的li元素中,选择索引为奇数的li

:even $(' li:even ') 在获取到的li元素中,选择索引为偶数的li

举两个例子:

1.选择索引为奇数的li元素,使其颜色变为绿色(变换样式采用的是jQuery的css方法)


格式:$(' 选择器 ').css(' 属性 ','属性值’')


<body>

   <ul>

      <li></li>

      <li></li>

      <li></li>

      <li></li>

      <li></li>

      <li></li>

      <li></li>

      <li></li>

   </ul>

   <script>

        $('ul li:odd').css('background','green');

   </script>

</body>


因为筛选选择器的索引从0开始,所以得到奇数索引实际上是数量上的偶数位变色




2.使索引为3的li变粉色


<body>

   <ul>

      <li></li>

      <li></li>

      <li></li>

      <li></li>

      <li></li>

      <li></li>

      <li></li>

      <li></li>

   </ul>

   <script>

        $('ul li:eq(3)').css('background','pink');

   </script>

</body>


索引的第三个,因为索引从0开始,所以实际上是数量上的第四个变色




隐式迭代:

如果我们获取了所有的 li,并且设置其为粉色: $('ul li').css('background','pink'),你会发现,所有的 li 都变了粉色,如图所示。


可是这时候我们会想,我们并没有用for循环给每个li设置粉色啊?为什么全部都变了粉色呢?,这就是 jQuery 的隐式迭代


隐式迭代:遍历以伪数组形式存储的内部DOM元素的过程就叫做隐式迭代,它给匹配到的所有元素进行遍历,并给每个元素添加相应的方法


<body>

   <ul>

      <li></li>

      <li></li>

      <li></li>

      <li></li>

      <li></li>

      <li></li>

      <li></li>

      <li></li>

   </ul>

   <script>

        $('ul li').css('background','pink');

   </script>

</body>




       相比较原生 JS ,jQuery 的隐式迭代更为方便,我们在要使所有获取到的标签变为同一样式时可以使开发更为敏捷


相关文章
N..
|
2月前
|
JavaScript 前端开发 开发者
jQuery选择器
jQuery选择器
N..
16 1
|
4月前
|
JavaScript
jquery的9大选择器
jquery的9大选择器
28 2
|
4月前
|
JavaScript
jQuery :nth-of-type(n)选择器的用法详解
jQuery中,:nth-of-type(n)选择器可以对selector选择器匹配选择到的所有HTML元素进行二次匹配选择,为了更好地阐述:nth-of-type(n)的语法,这里假设selector是一个元素p选择器,如此,:nth-of-type(n)可以用于匹配p元素选择器选择到的p元素指向的父元素中第n个类型为p的子元素,而且与p是否是该父元素的第n个子元素无关,比如
40 5
|
7月前
|
JavaScript 前端开发 Java
jQuery入门&选择器
jQuery入门&选择器
|
3天前
|
JavaScript 前端开发
【Web 前端】 jQuery 里的 ID 选择器和 class 选择器有何不同?
【5月更文挑战第1天】【Web 前端】 jQuery 里的 ID 选择器和 class 选择器有何不同?
|
9天前
|
JavaScript 索引
jQuery 选择器有几种,分别是什么
jQuery 选择器有几种,分别是什么
22 5
|
22天前
|
Web App开发 JavaScript 前端开发
JQuery的选择器有哪些?
JQuery的选择器有哪些?
11 1
|
2月前
|
JavaScript
jQuery选择器案例之——index.js
jQuery选择器案例之——index.js
8 0
|
2月前
|
JavaScript
jQuery选择器案例之——index.html
jQuery选择器案例之——index.html
9 1
|
2月前
|
JavaScript 前端开发
jQuery选择器整理
jQuery选择器整理
13 0