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

 更新时间:2016年09月18日 10:55:15   投稿:jingxian  
下面小编就为大家带来一篇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>

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>

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

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

 

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

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>

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

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

相关文章

  • jQuery3.0中的buildFragment私有函数详解

    jQuery3.0中的buildFragment私有函数详解

    在 jQuery3.0中,buildFragment 是一个私有函数,用来构建一个包含子节点 fragment 对象。下文给大家介绍jQuery3.0中的buildFragment私有函数详解,对jquery3.0 buildfragment相关知识感兴趣的朋友一起学习吧
    2016-08-08
  • jQuery 控制文本框自动缩小字体填充

    jQuery 控制文本框自动缩小字体填充

    这篇文章主要介绍了jQuery 控制文本框自动缩小字体填充的相关资料,需要的朋友可以参考下
    2017-06-06
  • jQuery内容过滤选择器用法示例

    jQuery内容过滤选择器用法示例

    这篇文章主要介绍了jQuery内容过滤选择器用法,结合实例形式分析了jQuery中使用contains、empty、has、parent等进行内容过滤的操作技巧,需要的朋友可以参考下
    2016-09-09
  • jQuery中的常用事件总结

    jQuery中的常用事件总结

    jquery中一些事件函数使用小结,需要的朋友可以参考下。
    2009-12-12
  • 仿百度的关键词匹配搜索示例

    仿百度的关键词匹配搜索示例

    关键词匹配搜索想必大家一定会想到百度,下面有个不错的示例,感兴趣的朋友可以参考下
    2013-09-09
  • jQuery 表单验证扩展代码(二)

    jQuery 表单验证扩展代码(二)

    前些天写了一篇文章 jQuery 表单验证扩展(一) ,这是jQuery表单验证扩展的一个雏形,里面有了一些基本的功能!昨晚再次努力了一下,对表单中是否必填项验证这个部分做了一些修改的扩充!
    2010-10-10
  • jQuery 自动增长的文本输入框实现代码

    jQuery 自动增长的文本输入框实现代码

    文本输入框内的字数不能确定,而input type="text"的size是固定的,当字数超过size时(默认是20),先输入的内容就会从文本框的左端隐藏起来,不便于输入。
    2010-04-04
  • jQuery阻止事件冒泡具体实现

    jQuery阻止事件冒泡具体实现

    冒泡事件就是点击子节点,会向上触发父节点,祖先节点的点击事件,有需要的朋友可以参考一下
    2013-10-10
  • jQuery对象的selector属性用法实例

    jQuery对象的selector属性用法实例

    这篇文章主要介绍了jQuery对象的selector属性用法,实例分析了selector属性返回选择器的使用技巧,具有一定的参考借鉴价值,需要的朋友可以参考下
    2014-12-12
  • jQuery实现的自动加载页面功能示例

    jQuery实现的自动加载页面功能示例

    这篇文章主要介绍了jQuery实现的自动加载页面功能,结合简单实例形式分析了jQuery针对页面元素的动态加载与属性操作相关技巧,需要的朋友可以参考下
    2016-09-09

最新评论