zoukankan      html  css  js  c++  java
  • jQuery_2_常规选择器-高级选择器

    高级选择器

    层次选择器

    1. 后代选择器    $("#d1 p")   获取追溯到的多个DOM对象  (无论儿子还是孙子都是后代)

    2. 子选择器       $("#d1>p")  只获取子类节点的多个DOM对象   (只是儿子)

    3. next选择器    $("#d1+p")  只获取某节点后同一个级别的DOM对象 (这里的p是紧跟的,如果中间还有别的标签,则                                              无用)

    4. nextAll选择器   $("#d1~p")  获取某节点后面所有同级DOM对象

        <div id="d1">
            <p>p</p>
            <p>p</p>
            <p>p</p>
            <div id="d2">
                <p>p</p>
                <p>p</p>
                <p>p</p>
            </div>
        </div>
    #d1>p{
        color:red;
    }
    
    #d1+p{
        color:red;
    }
    
        #d1~p{
        color:red;
    }
        $("#d1 p").css("color", "red"); //后代选择器,无论儿子还是孙子都是后代
        $("#d1").find("p").css("color", "blue");//find等价于后代选择器
    
        $("#d1>p").css("color", "green");//子选择器
        $("#d1").children("p").css("color", "orange")//为子选择器提供了一个等价children()方法
    
        $("#d1+p").css("color", "blue");//next选择器
        $("#d1").next("p").css("color", "blue");//为next选择器提供了一个等价的next()方法
    
        $("#d1~p").css("color", "blue");//nextAll选择器
        $("#d1").nextAll("p").css("color", "yellow");//为nextAll选择器提供了一个等价的nextAll()方法

    层次选择器对节点的层次都是有要求的,比如子选择器,只有子节点可以被选择到,孙子节点和重孙子节点都无法选择到。next和nextAll选择器,必须是同一个层次的后一个和后N个,不在同一个层次是无法选取到的。

    选择器方法不传参,就相当于传递了“*”号

        $("#d1").next().css("color", "green");//next()等选择器不传参,就相当于传递了*号
        //如果*在某个环境里有所浪费,建议尽量不去使用

    CSS不能实现的选择器,下面是jQuery提供的方法

        <p>p</p>
        <p>p</p>
        <p>p1</p>
        <strong>s</strong>
        <div id="d1">div<p>p2</p></div>
        <strong>s</strong>
        <p>p3</p>
        <strong>s</strong>
        <p>p</p>
        <p>p</p>
        $("#d1").prev("p").css("color", "red"); //同级上一个元素
        $("#d1").prevAll("p").css("color", "red");//同级所以上面的元素
    
        $("#d1").preAll("P").css("color", "red");
        $("#d1").nextAll("P").css("color", "red");
        $("#d1").preAll("P").nextAll("P").css("color", "red");//错误形式,不能连缀
        $("#d1").siblings("p").css("color", "red");//同级上下所以元素
    
        $("#d1").preUntil("p").css("color", "red"); //同级上非指定元素选定,遇到则停止
        $("#d1").nextUntil("p").css("color", "red");//同级下非指定元素选定,遇到则停止
  • 相关阅读:
    深入浅出 Redis client/server 交互流程
    VMware三种网络连接模式(转载)
    ARP 原理及攻击
    symbol lookup error:undefined symbol
    printf 颜色格式串"33[34;1m"
    运行openvas
    openvas 安装
    升级openssl 支持TLS1.2
    Windows登录密码明文获取器
    Linux字符串截取和处理命令 cut、printf、awk、sed、sort、wc
  • 原文地址:https://www.cnblogs.com/xiao9426926/p/6640133.html
Copyright © 2011-2022 走看看