首页 前端知识 Jquery入门系列2---层次选择器

Jquery入门系列2---层次选择器

2025-03-04 11:03:44 前端知识 前端哥 808 258 我要收藏

上节课讲了基础选择器,我们来回顾一下,基础选择器包括类选择器,id选择器,元素选择器,以及这几种混和在一块的用法。今天我们来讲层次选择器。

何为层次选择器呢?

如果我们想通过DOM元素之间的层次关系来获取特定元素,比如后代元素,子元素,相邻元素,兄弟元素等,就需要层次选择器,下面我把层次选择器常用的几种列出一张表格:

选择器描述返回示例
$("ancestor  descendant")选取ancestor里的所有descendant后代元素集合元素$('div span)选取div里的所有span元素
$("parent>child")选取parent元素下的child子元素集合元素$('div>span')选取div元素下元素名是span的子元素
$("prev+next")选取紧接在prev后的next元素集合元素$('.one+div')选取class为one的下一个<div>元素
$("prev~siblings)选取prev后的所有siblings元素集合元素

$('#two~div')

选取id为two的元素后面的所有<div>兄弟元素

说完了层次选择器,大家光看肯定不行,得会用,我这里写了一个小demo,来给大家演示一下每一个选择器的用法,请看:

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
<style type="text/css">
div, span, p {
  width: 140px;
  height: 140px;
  margin: 5px;
  background: #aaa;
  border: #000 1px solid;
  float: left;
  font-size: 17px;
  font-family: Verdana;
}
div.mini {
  width: 55px;
  height: 55px;
  background-color: #aaa;
  font-size: 12px;
}
div.hide {
  display: none;
}
</style>

</head>
<body>
<div class="one" id="one">
  id为one,class为one的div
  <div class="mini">class为mini</div>
</div>
<div class="one" id="two" title="test">
  id为two,class为one,title为test的div
  <div class="mini" title="other">class为mini,title为other</div>
  <div class="mini" title="test">class为mini,title为test</div>
</div>
<div class="one">
  <div class="mini">class为mini</div>
  <div class="mini">class为mini</div>
  <div class="mini">class为mini</div>
  <div class="mini"></div>
</div>
<div class="one">
  <div class="mini">class为mini</div>
  <div class="mini">class为mini</div>
  <div class="mini">class为mini</div>
  <div class="mini" title="tesst">class为mini,title为tesst</div>
</div>
<div style="display: none;" class="one">style的display为none的div</div>
<div class="hide">class为hide的div</div>
<div>包含input的type为hidden的div<input type="hidden" size="8"/></div>
<span id="mover">正在执行动画的span元素</span>
</body>
</html>

这是一段html代码,相信能看到jquery的,对基础的html代码也肯定很熟悉了,下面我们来做几道题,这里用到一个知识点,后面会详细讲到,更改css样式,用.css("属性",'值')

1.改变<body>内所有<div>的背景色

$('body div').css('background','#bbffaa');

既然让我们改变div的背景色,是不是得找到所有div,怎么找,那就是$('body div'),设置背景色用.css('background','#ffbbaa');

2.改变<body>内子<div>元素的背景色

$('body>div').css('background','pink');

3.改变class为one的下一个div的背景色

$('.one+div').css('background','yellow');

4.改变id为two的元素后面的所有<div>兄弟元素的背景色

$('#two~div').css('background','skyblue');

好,今天这一讲结束,大家有时间多多练习,就熟悉了,Jquery本身不是很难,很容易上手,有不会的欢迎评论区留言,大佬请绕过。本系列专为小白准备。

转载请注明出处或者链接地址:https://www.qianduange.cn//article/22572.html
标签
评论
发布的文章

图论-腐烂的橘子

2025-03-04 11:03:06

大家推荐的文章
会员中心 联系我 留言建议 回顶部
复制成功!