jQuery关系查找方法

jQuery关系查找方法

  • $(this):在原生的DOM操作中,事件函数内部都有一个this关键字指向的就是触发事件的事件源;在jQuery中将this关键字传递给$()方法,得到的就是指向自己的jQuery对象,这样就可以使用jQuery方法了.
  • parent()父级:jQuery对象都有一个parent()方法,得到的是自己的父级,父级得到的也是一个jQuery对象,可以直接继续打点调用jQuery方法和属性
  • children()子级:可以得到自己的所有子级元素组成的jQuery对象;得到的子级组成的jQuery对象可以继续调用jQuery方法和属性
    • children()可以传递参数,参数是字符串格式的选择器,在选中所有子级的情况下,保留满足选择器的部分,进行二次选择.
  • siblings()兄弟:jQuery对象通过调用siblings()方法可以得到除了自己以外的所有同级元素(兄弟)组成的jQuery对象,找到的只能是亲的兄弟,不能是旁系(叔叔家)的兄弟
    • siblings()方法的到的jQuery对象可以进行二次选择,通过给参数传递字符串格式得到选择器
<head>
    <style>
        *{
            margin: 0;
            padding: 0;
        }
        .box{
            width: 400px;
            height: 60px;
            border: 1px solid #000;
            margin-top: 2px;
        }
        .box p,.box h2{
            float: left;
            width: 60px;
            height: 60px;
            margin-right: 20px;
            background-color: rgb(164, 247, 233);
        }
    </style>
</head>
<body>
    <div class="box">
        <p></p>
        <p></p>
        <p></p>
        <p></p>
        <h2>h2</h2>
    </div>
    <div class="box">
        <p></p>
        <p></p>
        <p></p>
        <p></p>
        <h2>h2</h2>
    </div>
    <div class="box">
        <p></p>
        <p></p>
        <p></p>
        <p></p>
        <h2>h2</h2>
    </div>
    <div class="box">
        <p></p>
        <p></p>
        <p></p>
        <p></p>
        <h2>h2</h2>
    </div>
    <script src="../jq/jquery-1.12.4.min.js"></script>
    <script>
        var $p = $("p");
        var $box = $(".box")
        $p.click(function(){
            //点击自己,发生颜色改变
            
            //使用$()包裹this,this由指向触发事件的原生js对象,变成指向jQuery对象自己
            $(this).css("background-color","pink");
            // $(this).parent() 找到事件源的父级元素
            $(this).parent().css("background-color","skyblue");

            //siblings()
          //  $(this).siblings().css("background-color","purple");
            //除了点击的以外,它的兄弟都变成了紫色
            // 添加参数后,会按照指定的选择器在子级中进行二次选择
            $(this).siblings("h2").css("background", "purple");
            //兄弟元素同时是好标签

        })

        //通过点击div 获取它的子级元素
        $box.click(function(){
            //获取子级
           // $(this).children().css("background","pink");
            
           // 添加参数后,会按照指定的选择器在子级中进行二次选择
            $(this).children("h2").css("background", "orange");

        })

        //查找兄弟元素  sinblings()
        // 写在$P方法中
    </script>
</body>
posted @ 2021-03-29 07:57  小白可别不举铁  阅读(148)  评论(0编辑  收藏  举报