您的位置:首页 > Web前端 > JQuery

JQuery中的层级选择器

2016-05-29 15:47 459 查看
层级选择器

文档中的所有的节点之间都是有这样或者那样的关系。我们可以把节点之间的关系可以用传统的家族关系来描述,可以把文档树当作一个家谱,那么节点与节点直接就会存在父子,兄弟,祖孙的关系了。


选择器中的层级选择器就是用来处理 子元素 后代元素 兄弟元素 相邻元素这种关系的

通过一个列表,对比层级选择器的区别



具体实现我们看一下下面代码

<!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>
<div class="left">
<div class="aaron">
<p>div下的第一个p元素</p>
</div>
<div class="aaron">
<p>div下的第一个p元素</p>
</div>
</div>
<div class="right">
<div class="imooc">
<article>
<p>div下的article下的p元素</p>
</article>
</div>
<div class="imooc">
<article>
<p>div下的article下的p元素</p>
</article>
</div>
</div>

<script type="text/javascript">
//子选择器
$('div > p') 选择所有div元素里面的第一个子元素P
$('div > p').css("border", "1px groove red");
</script>

<script type="text/javascript">
//后代选择器
$('div  p') 选择所有div元素里面的p元素
$('div  p').css("border", "1px groove red");
</script>

<h2>相邻兄弟选择器与一般兄弟选择器</h2>
<div class="bottom">
<div>兄弟节点div, +~选择器不能向前选择</div>
<span class="prev">选择器span元素</span>
<div>span后第一个兄弟节点div</div>
<div>兄弟节点div
<div class="small">子元素div</div>
</div>
<span>兄弟节点span,不可选</span>
<div>兄弟节点div</div>
</div>

<script type="text/javascript">
//相邻兄弟选择器
//选取prev后面的第一个的div兄弟节点
$(.prev + div).css("border", "3px groove blue");
</script>

<script type="text/javascript">
//一般相邻选择器
//选取prev后面的所有的div兄弟节点
$(.prev ~ div).cs```
("border", "3px groove blue");
</script>

</body>

</html>


进一步详细解释:
$( "parent > child" ) 子选择器:选择所有指定“parent”元素中指定的"child"的直接子元素。 $("ancestor descendant") 后代选择器:选择给定的祖先元素的所有后代元素, 一个元素的后代可能是该元素的一个孩子,孙子,曾孙等 $("prev + next") 相邻兄弟选择器:选择所有紧接在“prev”元素后的“next”元素 $("prev ~ siblings") 一般兄弟选择器:匹配“prev”元素之后的所有 兄弟元素。具有相同的父元素,并匹配过滤“siblings”选择器
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  jquery 层级选择器