jQuery选择器之内容筛选选择器

news/2024/7/11 1:11:24 标签: jquery

背景:

基本筛选选择器针对的都是元素DOM节点,如果我们要通过内容来过滤,jQuery也提供了一组内容筛选选择器,当然其规则也会体现在它所包含的子元素或者文本内容上。

选择器描述
$(“:contains(text)”)选择所有包含指定文本的元素
$(“:parent”)选择所有含有子元素或者文本的元素
$(“:empty”)选择所有没有子元素的元素(包含文本节点)
$(“:has(selector)”)选择元素中至少包含指定选择器的元素

注意:
:contains与:has都有查找的意思,但是contains查找包含“指定文本”的元素,has查找包含“指定元素”的元素
如果:contains匹配的文本包含在元素的子元素中,同样认为是符合条件的。
:parent与:empty是相反的,两者所涉及的子元素,包括文本节点

代码:

<!DOCTYPE html>
<html>

<head>
    <meta http-equiv="Content-type" content="text/html; charset=utf-8" />
    <title></title>
    <link rel="stylesheet" href="imooc.css" type="text/css">
    <script src="http://libs.baidu.com/jquery/1.9.1/jquery.js"></script>
</head>

<body>
    <h2>内容筛选器</h2>
    <h3>:contains/:has</h3>
    <div class="left">
        <div class="div">
            <p>:contains</p>
        </div>
        <div class="div">
            <p>:contains</p>
        </div>

        <div class="div">
            <p>:contains</p>
        </div>
        <div class="div">
            <p>
                <span>:has</span>
            </p>
        </div>
        <div class="div">
            <p>has:contains has</p>
        </div>

        <div class="div">
            <p>
                <span>:hasds</span>
            </p>
        </div>


    </div>

    <script type="text/javascript">
        //查找所有class='div'中DOM元素中包含"contains"的元素节点
        //并且设置颜色
        $(".div:contains(':contains')").css("color", "#CD00CD");
    </script>

    <script type="text/javascript">
        //查找所有class='div'中DOM元素中包含"span"的元素节点
        //并且设置颜色
        $(".div:has(span)").css("color", "blue");
    </script>


    <h3>:parent/:empty</h3>
    <div class="left">
        <div class="aaron">
            <a>:parent</a>
        </div>
        <div class="aaron">
            <a>:parent</a>
        </div>
        <div class="aaron">
            <a>:parent</a>
        </div>
        <div class="aaron">
            <a></a>
        </div>
    </div>
    <script type="text/javascript">
       //选择所有包含子元素或者文本的a元素
       //增加一个蓝色的边框
       $("a:parent").css("border", "3px groove blue");
    </script>

    <script type="text/javascript">
       //找到a元素下面的所有空节点(没有子元素)
       //增加一段文本与边框
       $("a:empty").text(":empty").css("border", "3px groove red"); 
    </script>

</body>

</html>

运行结果:

这里写图片描述


http://www.niftyadmin.cn/n/618114.html

相关文章

Linux 查看与修改mtu值

MTU&#xff1a;通信术语 最大传输单元&#xff08;Maximum Transmission Unit&#xff09;是指一种通信协议的某一层上面所能通过的最大数据包大小&#xff08;以字节为单位&#xff09;。 我们在使用互联网时进行的各种网络操作&#xff0c;都是通过一个又一个“数据包”传…

并行-问题拾遗

背景: 正做并行设计的时候&#xff0c;报错&#xff1a; terminate called after throwing an instance of ‘std::bad_alloc’ 查看代码&#xff0c;发现是在做并行计算任务id&#xff08;字符串&#xff09;获取之后&#xff0c;对id做一次按照\t的分割&#xff0c;并将结…

C11标准和C++11标准

1、 C语言的C11 标准有哪些改进的地方&#xff1f;会对各类C项目起到哪些帮助&#xff1f; 1. 对齐处理操作符 alignof&#xff0c;函数 aligned_alloc()&#xff0c;以及 头文件 <stdalign.h>。 2. _Noreturn 函数标记&#xff0c;类似于 gcc 的 __attribute__((nore…

python学习笔记-半角字符和全角之间的转换

背景&#xff1a; 在做日文文本的处理时候&#xff0c;统一半全角字符。 分析&#xff1a; 说明: 全角字符unicode编码从65281~65374 &#xff08;十六进制 0xFF01 ~ 0xFF5E&#xff09; 半角字符unicode编码从33~126 &#xff08;十六进制 0x21~ 0x7E&#xff09; 特例&…

linux磁盘异常占用

背景&#xff1a; 某服务器报警&#xff0c;/根目录下磁盘超设定阈值。 分析&#xff1a; 1&#xff1a;查看磁盘占用情况 df -h 可以看出根目录已经占用了86%: 从上述信息可以看出根目录的文件系统对应的设备是/dev/sda2。 注&#xff1a;disk free(df&#xff0c;检…

理解ffmpeg 中的pts,dts,time_base

PTS&#xff1a;Presentation Time Stamp。PTS主要用于度量解码后的视频帧什么时候被显示出来 DTS&#xff1a;Decode Time Stamp。DTS主要是标识读入内存中的&#xff42;&#xff49;&#xff54;流在什么时候开始送入解码器中进行解码 也就是pts反映帧什么时候开始显示&am…

交叉编译流量监测工具nload

一、编译安装ncurses 下载&#xff1a;wget http://ftp.gnu.org/gnu/ncurses/ncurses-6.0.tar.gz 配置&#xff1a;./configure --prefix/home/install/ncurses --hostarm-hisiv300-linux --with-normal 要生成动态库加--with-shared 编译安装&#xff1a;make &…

ubuntu16.04 环境配置及问题解决

ubuntu安装后&#xff0c;root初始密码为随机的&#xff0c;需要先设置 1、先用安装时候的用户登录进入系统 2、输入&#xff1a;sudo passwd 3、输入新密码&#xff0c;重复输入密码&#xff0c;最后提示passwd&#xff1a;password updated sucessfully 至此已完成对root密…