话不多说,直接贴代码(我只是希望能在温习原生js的同时,发现一些有趣的东西!)

.html:

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<style type="text/css">
#sibling *{
display: block;
border: 2px dashed gray;
color: grey;
padding: 5px;
margin: 5px;
}
</style>
</head>
<script type="text/javascript" src="js/jquery-3.1.0.js"></script>
<script type="text/javascript" src="js/jQueryFilter.js"></script>
<link type="text/css" href="css/jQueryFilter.css" rel="stylesheet"/>
<body>
<div id="filter">
<p>p1</p>
</div>
<div>
<p  class="cla">p1</p>
</div>
<div>
<p class="cla">p1</p>
</div>
<div>
<h3>p1</h3>
</div>
<div>
<h1>p1</h1>
</div>

<div style="" id="sibling">
<p>p</p>
<p>pp</p>
<h1>1</h1>
<h2>2</h2>
<h3>3</h3>
<h4>4</h4>
</div>

<div id="toDown1">div1
<div id="toDown2">div2
<p id="pid">p
<a>
Hello!
</a>
</p>
</div>
</div>
</body>
</html>

//下图代码块用于向上及向下遍历

// go on

.js:

$(document).ready(function(){
// filterElement()
// siblingElement();
// toDown();
toUp();
})

function filterElement(){
/*
jQuery过滤
first()
last()
eq()
filter()
not()
*/
$("div p").first().css("background-color","red");//div下的p元素中的第一个
$("div p").last().css("background-color","blue");//最后一个
$("div p").eq(1).css({"background-color":"grey","color":"red"});
$("div p").filter(".cla").css("background-color","grey");//过滤div中的p元素,class为cla的
$("div p").not(".cla").css("background-color","red");//过滤div下的所有p元素,class不为cla的
}

function siblingElement(){
/*
jQuery遍历同级元素
siblings() 所有同级元素
next() 下一个同级元素
nextAll() 下面所有的同级元素
nextUntil() 下面元素的区间
prev() 上一个同级元素
prevAll() 上面所有的同级元素
prevUntil() 上面元素的区间
*/
// $("#sibling h3").siblings().css({border:"3px solid #FF0000"});
// $("#sibling h3").next().css({border:"3px solid #FF0000"});
// $("#sibling h2").nextAll().css({border:"3px solid #FF0000"});
// $("#sibling h1").nextUntil("h4").css({border:"3px solid #FF0000"});//到h4,不包括h4
// $("#sibling h4").prev().css({border:"3px solid #FF0000"});
// $("#sibling h4").prevAll().css({border:"3px solid #FF0000"});
$("#sibling h4").prevUntil("p").css({border:"3px solid #FF0000"});//到p,不包括p
}

function toDown(){
/*
* jQuery向下遍历
* children() 只向下遍历一级(儿子辈)
* find() 可向下遍历任意子元素(儿孙满堂)
* */
// $("#toDown1").children().css({border:"3px dashed #FF0000"});
// $("#toDown1").children("#toDown2").children("p").css({border:"3px dashed #FF0000"});//带参 只能是直接子元素
$("#toDown1").find().css({border:"3px dashed #FF0000"});//不带参 不寻找
$("#toDown1").find("p").css({border:"3px dashed #FF0000"});//带参 可跨元素寻找  如:中间有一个#toDown2
}

function toUp(){
/*
* jQuery向上遍历
* parent() 只向上遍历一级(爸爸辈)
* parents() 可向上遍历任意子元素(长辈们)
* parentsUntil() 向上遍历一个区间
* */
// $("#pid").parent().css({border:"3px dashed #FF0000"});
// $("#pid").parent("toDown1").css({border:"3px dashed #FF0000"});//带参,没有任何变化,只能遍历直接父元素
// $("#pid").parents().css({border:"3px dashed #FF0000"});//包括body和html
// $("#pid").parents("toDown1").css({border:"3px dashed #FF0000"});//可访问非直接父元素
$("a").parentsUntil("#toDown1").css({border:"3px dashed #FF0000"});
}

.css:

#sibling {
margin-top: 10px;
background-color: none;
height:300px;
width: 48%;
float:left;
}

#sibling * {
display: block;
border: 2px dashed gray;
color: grey;
padding: 5px;
margin: 5px;
}

#toDown1{
width: 48%;
height:300px;
border: 2px solid chocolate;
float: left;
}

#toDown2{
width: 80%;
height:80%;
margin-top: 10px;
margin-left: 10px;
border: 2px solid chocolate;
}

#toDown2 p{
margin-left: 10px;
margin-top: 10px;
width: 50%;
height: 20%;
border:  2px solid chocolate;
vertical-align: middle;
line-height: 40px;
}

基础差的,有兴趣可以贴到编译器中玩一玩。大牛勿喷。

jQuery过滤、遍历同级元素、向上遍历、向下遍历相关推荐

  1. linux下遍历目录树方法总结,linux下遍历目录树方法总结(下)

    2.使用ftw调用遍历目录 2.1ftw函数族 使用readdir函数等实现递归遍历目录树的方法比较原始,glibc2.1收录了ftw等函数,可以方便实现目录树的遍历. #include intftw ...

  2. jquery笔记一:下载安装、语法、选择器、遍历选择元素的方法、jQuery动画

    目前 jQuery 兼容于所有主流浏览器, 包括 IE 6!开发时常用 jquery.js,上线用 jquery.min.js. jq插件 目前jQuery有三个大版本: (1)1.x.x: 兼容ie ...

  3. jquery 遍历父元素、子元素、兄弟元素

    寻找父元素 1. parent()方法,只返回被选元素的直接父元素,只遍历到上一级的父元素,返回的是一个元素. 2. parents()方法,返回被选元素的所有父元素,一直向上遍历,直到文档的根元素为 ...

  4. jquery选择器 之 获取父级元素、同级元素、子元素

    一.获取父级元素 1. parent([expr]): 获取指定元素的所有父级元素 <divid="par_div"><aid="href_fir&qu ...

  5. ***jquery选择器 之 获取父级元素、同级元素、子元素

    一.获取父级元素 1. parent([expr]): 获取指定元素的所有父级元素 <div id="par_div"><a id="href_fir& ...

  6. jquery 选择器(name,属性,元素)大全

    jQuery 选择器大体上可分为:基本选择器.层次选择器.过滤选择器.表单选择器. 其中过滤选择器可以分为:简单过滤选择器.内容过滤选择器.可见性过滤选择器.属性过滤选择器.子元素过滤选择器.表单对象 ...

  7. jQuery——遍历DOM元素的后代元素

    任务描述 本关任务:用 jQuery 向下遍历 DOM 节点.效果如下: 相关知识 为了完成本关任务,你需要掌握:1.children(),2. find(). 向下遍历DOM节点 基本的html结构 ...

  8. jQuery——遍历DOM元素的兄弟元素

    任务描述 本关任务:用 jQuery 遍历 DOM 元素的兄弟元素.效果如下: 相关知识 为了完成本关任务,你需要掌握:1.siblings(),2. next() , nextAll() 3. pr ...

  9. jquery 获取同级元素_如何在jQuery中获取元素的同级

    jquery 获取同级元素 In this post, we will discuss how to get the siblings of an HTML element in jQuery. jQ ...

最新文章

  1. Java OOP(Object Oriented Programming)个人理解及总结
  2. Windows7下OpenGL简单使用举例
  3. 学习使用资源文件[9] - WAVE 资源
  4. RIM更新PlayBook基于QNX的操作系统
  5. php qq对话,用php聊QQ
  6. KlayGE SVN原生支持立体显示
  7. 谈谈我开发过的几套语音通信解决方案
  8. 如何从零开始写一个 web 框架?
  9. 浏览器兼容性问题解决方案之CSS——已在IE、FF、Chrome测试
  10. TPT:中科院等提出用于VideoQA的跨模态交互时间金字塔Transformer
  11. 天猫精灵 python_python爬天猫
  12. 力扣算法题—095不同的二叉搜索树【二叉树】
  13. 问题五十九:怎么求一元六次方程在区间内的所有不相等的实根(3)——修正一个问题
  14. Chrome 离线下载最佳方法
  15. ThinkPHP自定义错误页面
  16. oracle 卸载(手动,无universal installer)
  17. linux仿win7软件,Ubuntu/Linux Mint用上仿Win7/Win8主题
  18. Poco库使用:文件目录操作
  19. 在mcreator里创建你的第一个模组
  20. 【Cheatsheet】Java的常用代码(以及eclipse技巧)

热门文章

  1. 浅谈一下个人基于IRIS后端业务开发框架的理解
  2. 1046: 数值统计
  3. Flink SQL搭建实时数仓DWD层
  4. 算法 + 算法 = 新算法
  5. NI的LabView2022工具的安装与使用
  6. vim autoformat php,将Vim打造成Python IDE(二):代码格式化的一些问题
  7. QGIS:创建矢量图层
  8. oracle ppt讲义,oracle课件.ppt
  9. 如何在Linux终端查询修改主机名、以及主机名与ip的映射关系?
  10. 文件下载(解决中文文件名下载乱码问题)(二)