jQuery的层次选择器

简介

今天我学习jQuery的层次选择器,层次选择器一共有4种分别是后代选择器、子代选择器、兄弟选择器和相邻选择器。

准备工作

 首先双击点开桌面上的vscode软件

右键点击左侧的文件列表框,选择新建文件

给文件取一个名字,就叫jQuery的层次选择器.html


在右侧的代码编辑区域打上叹号敲击回车键

html的模板就出来了

将title标签中的Doument删除给网页标题取一个名字,叫做jQuery的层次选择器

在head标签中创建一对script标签,script标签的src属性值是jQuery文件的相对路径。

在body标签中我们首先添加一对button按钮,可以多写一些div标签的样式

首先写一个id为div1的父层div,在div1里添加一些div使其有层次感

<body>

    <!-- 按钮 -->
    <button id="b1">按钮</button>

    <div id="div1" style="border:1px solid black">
        <div id="div2" style="background-color: aqua;">这里是div2</div>
        <div id="div3" style="border:1px solid black">
            <div id="div4" style="margin-left: 20px; background-color: rgb(0, 102, 255);">这里是div3的子元素</div>
        </div>
        <div id="div5" style="border:1px solid black">
            <div id="div6" style="margin-left: 20px; background-color: rgb(255, 251, 0);">这里是div5的子元素</div>
        </div>
        <div id="div7">这里是div7</div>
    </div>
</body>

在body标签结束后写一对script标签,在这里写我们的js代码。

使用jQuery监听按钮的点击事件的方法

这样我们的前期准备工作就完成了。

jQuery的后代选择器

jQuery的后代选择器的格式是$("m n"); 表时m内部中的所有n。

我们将#div1替换成m,div替换成n ,表示得到id为div1内部中的所有div标签,调用jQuery的.css()方法使他们的背景颜色改成红色。

点击按钮之后这里应该所有的div的背景颜色都变成红色。

jQuery的子代选择器

将后代选择器的代码注释掉

jQuery的后代选择器和子代选择器是差不多的,如果后代选择器不管有几层div都可以选中,但是子代选择器只能选择下一层的div,如果在下一层的div中还有一层的话就不可以选中。

jQuery的子代选择器的格式是$("m>n"); 表示m内部中子代的n。

我们可以将#div1替换成m,div替换成n,如果点击按钮的话id为div1的子代div标签就会将背景颜色改变成红色。

点击按钮可以查看一下。

这里因为div2、div3、div5与div7是div1的下一层所以它们的背景颜色都变成了红色,但是div4与div6分别是div3与div5的下一层所以它们的背景颜色就没有变化。

jQuery的兄弟选择器

将子代选择器的代码注释掉

jQuery的兄弟选择器的格式是$("m~n"); 表示可以拿到m后面所有同层的n(不包括m)。

我们可以将#div2替换成m,div替换成n,如果点击按钮的话id为div2的同层的div标签就会将背景颜色改变成红色。

这里点击按钮看一下

因为div3、div5与div7是div2的同层div所以它们的背景颜色改变了。

div4、div6不与div2同层所以它们的背景颜色没有变化。

jQuery的相邻选择器

将兄弟选择器的代码注释掉

jQuery的相邻选择器的格式是$("m+n"); 表示可以拿到m后一个n(只能是同层级别的div)。

我们可以将#div3替换成m,div替换成n,如果点击按钮的话id为div3的后一个div标签(同层的div)就会将背景颜色改变成红色。

当我点击按钮时

会发现div5的背景颜色变成红色了,因为div4与div3不是同一层的,div5与div3是同一层的所以div5的背景颜色改变了。

<script>
    $("#b1").click(function () {
        // 后代选择器
        // $("#div1 div").css("background", "red");

        // 子代选择器
        // $("#div1>div").css("background", "red");

        // 兄弟选择器
        // $("#div2~div").css("background", "red");

        // 相邻选择器
        $("#div3+div").css("background", "red");
    });
</script>

小结

今天学习了前端jQuery的层次选择器,并使用例子演示了后代选择器、子代选择器、兄弟选择器和相邻选择器。

  • 26
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值