jquery学习记录二(过滤性选择器)

  过滤性选择器包括:

    1.:first过滤选择器

    2.:eq(index)过滤选择器

    3.:contains(text)过滤选择器

    4.:has(selector)过滤选择器

    5.:hidden过滤选择器

    6.:visible过滤选择器

    7.[attribute=value]属性选择器

    8.[attribute!=value]属性选择器

    9.[attribute*=value]属性选择器

    10.:first-child子元素选择器

    11.last-child子元素选择器



  

  过滤性选择器,该类型的选择器是根据某过滤规则进行的元素的匹配,书写时以“:”号开头,通常用于查找集合元素中的某一位置的单个元素。

  (1):first,:last 过滤性选择器:eg:$("li:first")   $("li:last")

  first选择第一个li标签,last选择最后一个li标签。

    <body>
        <div>改变最后一行"苹果"背景颜色:</div>
        <ol>
            <li>葡萄</li>
            <li>香蕉</li>
            <li>橘子</li>
            <li>西瓜</li>
            <li>苹果</li>
        </ol>

        <script type="text/javascript">
            $("li:last").css("background-color", "red");
        </script>
    </body>

  (2):eq(index)过滤选择器

  如果想从一组标签元素数组中,灵活选择任意一个标签元素,我们可以使用:eq(index),其中参数index表示索引号,它从0开始,如果index的值为3,表示选择的是第4个元素。如下选择的是“葡萄”。

    <body>
        <div>改变中间行"葡萄"背景颜色:</div>
        <ol>
        <li>橘子</li>
        <li>香蕉</li>
        <li>葡萄</li>
        <li>苹果</li>
        <li>西瓜</li>
        </ol>

        <script type="text/javascript">
            $("li:eq(2)").css("background-color", "#60F");
        </script>
    </body>

  (3):contains(text)过滤选择器

  与上面介绍的:eq(index)选择器按索引查找元素相比,有时候我们可能希望按照文本内容来查找多个元素,使用:contains(text)选择器更好,它的功能是选择包含指定文字字符串的全部元素,它通常与其他元素结合使用,获取包含”text“字符串内容的全部元素。如下选择的是1,3,5.

    <body>
        <div>改变包含"jQuery"字符内容的背景色:</div>
        <ol>
            <li>强大的"jQuery"</li>
            <li>"javascript"也很实用</li>
            <li>"jQuery"前端必学</li>
            <li>"java"是一种开发语言</li>
            <li>前端利器——"jQuery"</li>
        </ol>

        <script type="text/javascript">
            $("li:contains(‘jQuery‘)").css("background", "green");
        </script>
    </body>

  (4):has(selector)过滤选择器

  包含的元素名称。如下选择的是2,4.

    <body>
        <div>改变包含"label"元素的背景色:</div>
        <ol>
            <li><p>我是P先生</p></li>
            <li><label>L妹纸就是我</label></li>
            <li><p>我也是P先生</p></li>
            <li><label>我也是L妹纸哦</label></li>
            <li><p>P先生就是我哦</p></li>
        </ol>

         <script type="text/javascript">
            $("li:has(‘label‘)").css("background-color", "blue");
        </script>
    </body>

  (5):hidden过滤选择器

  :hidden过滤选择器的功能是获取全部不可见的元素,这些不可见的元素中包括type属性值为hidden的元素。

    <body>
        <h3>显示隐藏元素的内容</h3>
        <input id="hidstr" type="hidden" value="我已隐藏起来"/>
        <div></div>

        <script type="text/javascript">
        var $strHTML = $("input:hidden").val();
        $("div").html($strHTML);
    </script>
    </body>

  (6):visible过滤选择器

  与:hidden选择器正好相反,也就是只要不将元素的display属性值设置为none,那么都可以通过该选择器获取。如下获取的是香蕉,葡萄和苹果。

    <body>
        <h3>修改可见“水果”的背景色</h3>
        <ul>
            <li style="display:none">橘子</li>
            <li style="display:block">香蕉</li>
            <li style="display:">葡萄</li>
            <li>苹果</li>
            <li style="display:none">西瓜</li>
        </ul>

        <script type="text/javascript">
            $("li:visible").css("background-color","blue");
        </script>
    </body>

  (7)[attribute=value]属性选择器

  该选择器的功能是获取与属性名和属性值完全相同的全部元素,其中 []是专用于属性选择器的括号符。

    <body>
        <h3>改变"title"属性值为"蔬菜"的背景色</h3>
        <ul>
            <li title="蔬菜">茄子</li>
            <li title="水果">香蕉</li>
            <li title="蔬菜">芹菜</li>
            <li title="水果">苹果</li>
            <li title="水果">西瓜</li>
        </ul>

        <script type="text/javascript">
            $("li[title=‘蔬菜‘]").css("background-color", "green");
        </script>
    </body>

  (8)[attribute!=value] 属性选择器

    <body>
        <h3>改变"title"属性值不为"蔬菜"的背景色</h3>
        <ul>
            <li title="蔬菜">茄子</li>
            <li title="水果">香蕉</li>
            <li title="蔬菜">芹菜</li>
            <li title="水果">苹果</li>
            <li title="水果">西瓜</li>
        </ul>

        <script type="text/javascript">
            $("li[title!=‘蔬菜‘]").css("background-color", "green");
        </script>
    </body>

  (9)[attribute*=value]属性选择器

  该选择器可以获取属性值中包含制定内容的全部元素,其中[]是专用于属性选择器的括号符。

  如下选择的有”香蕉“,”小西红柿“和”西瓜“。

    <body>
        <h3>改变"title"属性值包含"果"的背景色</h3>
        <ul>
            <li title="蔬菜">茄子</li>
            <li title="水果">香蕉</li>
            <li title="蔬菜">芹菜</li>
            <li title="人参果">小西红柿</li>
            <li title="水果">西瓜</li>
        </ul>

        <script type="text/javascript">
            $("li[title*=‘果‘]").css("background-color", "green");
        </script>
    </body>

  (10):first-child子元素过滤选择器

  使用:first过滤选择器可以获取指定父元素中的首个子元素,但该选择器返回的是只有一个元素,并不是一个集合,而使用:first-child 子元素过滤选择器则可以获取每个父元素中返回的首个子元素,它是一个集合,常用多个集合数据的选择处理。如下选择的是”芹菜“和”橘子“。

    <body>
        <h3>改变每个"蔬菜水果"中第一行的背景色</h3>
        <ol>
            <li>芹菜</li>
            <li>茄子</li>
            <li>萝卜</li>
            <li>大白菜</li>
            <li>西红柿</li>
        </ol>
        <ol>
            <li>橘子</li>
            <li>香蕉</li>
            <li>葡萄</li>
            <li>苹果</li>
            <li>西瓜</li>
        </ol>

        <script type="text/javascript">
            $("li:first-child").css("background-color", "green");
        </script>
    </body>

  (11):last-child子元素过滤选择器

  该子元素过滤选择器的功能是获取每个父元素中返回的最后一个子元素,它也是一个集合,常用于多个集合数据的选择处理。如下获取的是”西红柿“和”西瓜“。

    <body>
        <h3>改变每个"蔬菜水果"中最后一行的背景色</h3>
        <ol>
            <li>芹菜</li>
            <li>茄子</li>
            <li>萝卜</li>
            <li>大白菜</li>
            <li>西红柿</li>
        </ol>
        <ol>
            <li>橘子</li>
            <li>香蕉</li>
            <li>葡萄</li>
            <li>苹果</li>
            <li>西瓜</li>
        </ol>

        <script type="text/javascript">
           $("li:last-child").css("background-color", "blue");
        </script>
    </body>

   

    

时间: 2024-10-10 07:21:14

jquery学习记录二(过滤性选择器)的相关文章

Windows API 编程学习记录&lt;二&gt;

恩,开始写Windows API编程第二节吧. 上次介绍了几个关于Windows API编程最基本的概念,但是如果只是看这些概念,估计还是对Windows API不是很了解.这节我们就使用Windows API 让大家来了解下Windows API的用法. 第一个介绍的Windows API 当然是最经典的MessageBox,这个API 的作用就是在电脑上显示一个对话框,我们先来看看这个API的定义吧: int WINAPI MessageBox(HWND hWnd, LPCTSTR lpTe

jQuery学习记录1

jquery 和 js css里面都是坑呀 this.style.backgroundColor 和 css {background:#8df;} 是冲突的,用了前者,再$(this).addClass("css class name");效果显示不出来. http://youchenglin.iteye.com/blog/685026 前他的一些内容参见下列代码 <!DOCTYPE html> <html> <head> <meta char

Spring Boot学习记录(二)--thymeleaf模板

Spring Boot学习记录(二)–thymeleaf模板 标签(空格分隔): spring-boot 自从来公司后都没用过jsp当界面渲染了,因为前后端分离不是很好,反而模板引擎用的比较多,thymeleaf最大的优势后缀为html,就是只需要浏览器就可以展现页面了,还有就是thymeleaf可以很好的和spring集成.下面开始学习. 1.引入依赖 maven中直接引入 <dependency> <groupId>org.springframework.boot</gr

JQuery 学习记录

在没有接触jQuery之前,总是听到或看到别人讲原生的JS,感到很奇怪,怎么还有原生的JS,现在才明白原来是相对jQuery来讲的.jQuery是一个很好的框架,运用起来比JS简单很多.在学习他的过程中,也学习了AJAX,可以实现与后台交互,学习时间有点短,对AJAX还不是很熟悉,感觉有点难度. 也已经学习大概一周的时间了,学会了留言板.瀑布流及搜索框的制作.相对来说,前端我掌握的比后端好,不知道是不是自己潜意识排斥,呃,但是总归要学的,不要呆在舒适区,要好好的学习,遇到困难才能有收获. 大体来

[jQuery学习系列二 ]2-JQuery学习二-数组操作

前言 上一篇内容 已经对于Jquery 有了一些认识, 包括Jquery的选择器和DOM对象, 那么这一篇继续来看下Jquery中很实用的Jquery对于数组的操作. Jquery中对数组的操作大致有以下几种形式:each(迭代), map(转换), grep(筛选), 合并等. 1,迭代(each)jQuery.each( object, callback ) 返回值:Object说明:通用例遍方法,可用于例遍对象和数组.注意: 传入的第一个参数可以是数组或者对象.如果数组,则遍历数组中的每一

jquery学习(二)-DOM操作

来自锋利的jquery第二版 一.DOM分类 DOM分为3类DOM Core(核心).HTML-DOM.CSS-DOM 1.DOM Core:其并不专属于javascript,任何一种支持DOM程序设计的语言都可以使用它.如javascript中的getElementById.getElementByTagName.getAttibute和setAttribute等方法,就是DOM Core的组成部分. 2.HTML-DOM:其比DOM Core出现的还要早,它提供了一些更简明的记号来描述各种H

jquery学习基础(二)

今天继续学习jquery的基础.直接看栗子吧. jquery操作checkbox demoOne 这里我点击超链接的时候,使用alert将所有已经checked的checkbox的value值打印出来,先看下效果: 关键的html和jquery代码: <div> <a href="#">获得被选中的元素</a> <input type="checkbox" checked value="111">c

jquery学习记录

i{margin:21px 0}#header-wrapper .Menu-indicator>i,.wrapper-embed .Menu-indicator>i{margin:13px 0}.Menu-popover{background-color:#f7f7f7;display:none;border:1px solid #b5b5b5;position:absolute;z-index:9998}.Menu-popover.is-active{display:block}.Menu_

jquery学习(一)-选择器

参考锋利的jquery第二版 1.基本的选择器 Id选择器 $(“#Id”) class类选择器 $(“.class”) Element元素选择器 $(“element”) *匹配所有元素 $(“*”) Selector1....n 组合选择器 $(“selector1 selector2 ..n”) 2.层次选择题 $(“ancester descendant ”) 选取ancestor元素里面的所有descendant(后代)元素 $(“parent>child”) 选取parent元素下面