JQuery遍历元素的父辈和祖先的方法


Posted in Javascript onSeptember 18, 2016

JQuery遍历

首先我们要知道 什么是 父亲,儿子,后代,同胞,祖先

JQuery遍历元素的父辈和祖先的方法

•<div> 元素是 <ul> 的父元素,同时是其中所有内容的祖先。

•<ul> 元素是 <li> 元素的父元素,同时是 <div> 的子元素

•左边的 <li> 元素是 <span> 的父元素,<ul> 的子元素,同时是 <div> 的后代。

•<span> 元素是 <li> 的子元素,同时是 <ul> 和 <div> 的后代。

•两个 <li> 元素是同胞(拥有相同的父元素)。

•右边的 <li> 元素是 <b> 的父元素,<ul> 的子元素,同时是 <div> 的后代。

•<b> 元素是右边的 <li> 的子元素,同时是 <ul> 和 <div> 的后代。

父类和祖先的遍历

1.parent()

遍历直接父亲 不往上遍历其它的祖先

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<style type="text/css">
</style>
<script type="text/javascript" src="jQuery/jquery-1.12.1.js"></script>
<script type="text/javascript">
$(function(){
	$("#btn").click(function(){
			$("#info").html("div4的父亲"+$("#div4").parent().attr("id"));
  });
});
</script>
</head>
<body>
<input type="button" value="点击" id="btn"><div id="info"></div>
<div id="div1">
 <div id="div2">
  <div id="div3">
    <div id="div4">
  		</div>
  </div>
 </div>
</div>

</body>
</html>

JQuery遍历元素的父辈和祖先的方法

2.parents()

遍历它的所有祖先

.each(function(i,e){})

对其中的每个元素进行遍历

其中i是索引,e是当前对象,相当于$(this),但是前者是js对象,后者是jquery对象。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<style type="text/css">
</style>
<script type="text/javascript" src="jQuery/jquery-1.12.1.js"></script>
<script type="text/javascript">
$(function(){
	$("#btn").click(function(){
			$("#div4").parents().each(function(i, e) {
        $("#info").html($("#info").html()+"第"+i+"个祖先是,("+$(this).attr("id")+")");
      });
  });
});
</script>
</head>
<body>
<input type="button" value="点击" id="btn"><div id="info"></div>
<div id="div1">
 <div id="div2">
  <div id="div3">
    <div id="div4">
  		</div>
  </div>
 </div>
</div>

</body>
</html>

JQuery遍历元素的父辈和祖先的方法

那你就会问了 第三个和第四个祖先是什么鬼 让我们在网页中按F12调试一下 看看结果

当i=3 也就是到了第三个祖先 结果是body

JQuery遍历元素的父辈和祖先的方法 

当i=4 也就是到了第四个祖先 结果是html

JQuery遍历元素的父辈和祖先的方法

3.parentsUntil()

遍历到指定的祖先(不包括该祖先)

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<style type="text/css">
</style>
<script type="text/javascript" src="jQuery/jquery-1.12.1.js"></script>
<script type="text/javascript">
$(function(){
	$("#btn").click(function(){
			$("#div4").parentsUntil("#div1").each(function(i, e) {
        $("#info").html($("#info").html()+"第"+i+"个祖先是,("+$(this).attr("id")+")");
      });
  });
});
</script>
</head>
<body>
<input type="button" value="点击" id="btn"><div id="info"></div>
<div id="div1">
 <div id="div2">
  <div id="div3">
    <div id="div4">
  		</div>
  </div>
 </div>
</div>

</body>
</html>

JQuery遍历元素的父辈和祖先的方法

所以范围是在#div4和#div1中间 不包含#div1

以上这篇JQuery遍历元素的父辈和祖先的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
一个不错的用JavaScript实现的UBB编码函数
Mar 09 Javascript
jquery控制select的text/value值为选中状态
Jun 03 Javascript
上传文件返回的json数据会被提示下载问题解决方案
Dec 03 Javascript
jQuery+PHP实现可编辑表格字段内容并实时保存
Oct 09 Javascript
jQuery+canvas实现的球体平抛及颜色动态变换效果
Jan 28 Javascript
jquery.form.js框架实现文件上传功能案例解析(springmvc)
May 26 Javascript
Javascript中作用域的详细介绍
Oct 06 Javascript
JavaScript制作弹出层效果
Dec 02 Javascript
深入理解es6块级作用域的使用
Mar 28 Javascript
js实现小球在页面规定的区域运动
Jun 16 Javascript
Vue+Bootstrap收藏(点赞)功能逻辑与具体实现
Oct 22 Javascript
uni-app 微信小程序授权登录的实现步骤
Feb 18 Javascript
移动端js触摸事件详解
Sep 18 #Javascript
AnjularJS中$scope和$rootScope的区别小结
Sep 18 #Javascript
jQuery向父辈遍历的简单方法
Sep 18 #Javascript
js字符串引用的两种方式(必看)
Sep 18 #Javascript
jQuery实现获取元素索引值index的方法
Sep 18 #Javascript
浅谈js中的引用和复制(传值和传址)
Sep 18 #Javascript
jQuery实现鼠标经过时高亮,同时其他同级元素变暗的效果
Sep 18 #Javascript
You might like
高亮度显示php源代码
2006/10/09 PHP
简单的移动设备检测PHP脚本代码
2011/02/19 PHP
javascript 写类方式之五
2009/07/05 Javascript
jqTransform form表单美化插件使用方法
2012/07/05 Javascript
Angular用来控制元素的展示与否的原生指令介绍
2015/01/07 Javascript
用JavaScript实现对话框的教程
2015/06/04 Javascript
javaScript数组迭代方法详解
2016/04/14 Javascript
JavaScript数组合并的多种方法
2016/05/22 Javascript
jQuery Easyui学习教程之实现datagrid在没有数据时显示相关提示内容
2016/07/09 Javascript
Vue项目环境搭建详细总结
2019/09/26 Javascript
node.js中Buffer缓冲器的原理与使用方法分析
2019/11/23 Javascript
[44:39]2014 DOTA2国际邀请赛中国区预选赛 NE VS CNB
2014/05/21 DOTA
[05:36]DOTA2 2015国际邀请赛中国区预选赛第四日TOP10
2015/05/29 DOTA
[42:24]完美世界DOTA2联赛循环赛 LBZS vs DM BO2第一场 11.01
2020/11/02 DOTA
Python爬虫beautifulsoup4常用的解析方法总结
2019/02/25 Python
python实现最大优先队列
2019/08/29 Python
Python协程 yield与协程greenlet简单用法示例
2019/11/22 Python
django queryset 去重 .distinct()说明
2020/05/19 Python
Django REST Swagger实现指定api参数
2020/07/07 Python
selenium3.0+python之环境搭建的方法步骤
2021/02/01 Python
Python Spyder 调出缩进对齐线的操作
2021/02/26 Python
基于注解实现 SpringBoot 接口防刷的方法
2021/03/02 Python
html5的websockets全双工通信详解学习示例
2014/02/26 HTML / CSS
BONIA波尼亚新加坡官网:皮革手袋,鞋类和配件
2016/08/25 全球购物
草莓网中国:StrawberryNet中国
2020/08/17 全球购物
网络、C以及其他硬件方面的面试题
2016/08/23 面试题
专升本自我鉴定
2013/10/10 职场文书
食堂员工工作职责
2013/12/18 职场文书
美德好少年主要事迹
2014/01/29 职场文书
教师岗位聘任书范文
2014/03/29 职场文书
2014年四风问题个人对照自查剖析材料
2014/09/15 职场文书
帝企鹅日记观后感
2015/06/10 职场文书
实习证明模板
2015/06/16 职场文书
Nginx+SpringBoot实现负载均衡的示例
2021/03/31 Servers
介绍一下28个JS常用数组方法
2022/05/06 Javascript
JS精髓原型链继承及构造函数继承问题纠正
2022/06/16 Javascript