关于Jquery的parent和parents

parent是指取得一个包含着所有匹配元素的唯一父元素的元素集合。
parents则是取得一个包含着所有匹配元素的祖先元素的元素集合(不包含根元素)。可以通过一个可选的表达式进行筛选。
可以看出parent取的很明确,就是当前元素的父元素;parents则是当前元素的祖先元素。下面列出例子说明:
<div id='div1'>
<div id='div2'><p></p></div>
<div id='div3' class='a'><p></p></div>
<div id='div4'><p></p></div>
</div>

$('p').parent()取到的是div2,div3,div4
$('p').parent('.a')取到的是div3
$('p').parent().parent()取到的是div1,这点比较奇特;不过Jquery对象本身的特点决定了这是可行的。
$('p').parents()取到的是div1,div2,div3,div4
$('p').parents('.a')取到的是div3

parent(exp)用法:取得一个包含着所有匹配元素的唯一父元素的元素集合。

  1. <script src="jquery-1.2.6.min.js" type="text/javascript"></script>
  2. <script type="text/javascript">
  3. $(document).ready(function() {
  4. $("#btn1").click(function(){
  5. alert($(this).parent().next().html());
  6. });
  7. });
  8. </script>
  9. </head>
  10. <body>
  11. <table>
  12. <tr>
  13. <td><input id="btn1" class="btn" type="button" value="test"/></td>
  14. <td>some text</td>
  15. </tr>
  16. </table>
  17. ....
其中:
  1. this.parent()是input前面的td
  2. this.parent().parent()获取的是tr
  3. this.parent().parent().parent()获取的是table
  4. this.parent().next()获取的是td相临的td

另例子中:

<div><p>Hello</p><p>Hello</p></div>

$("p").parent() 得到的是:<div><p>Hello</p><p>Hello</p></div>对象,因为p标签的父标签是div.

jquery的parents()使用

今天遇到一个有意思的问题,jquery有两个函数parent()和parents().通过这两个函数可以找到一个对象的父对象,又称作jquery的选择器。举个例子:

<body>
<div id="one">
<div id="two">hello</div>
<div id="three">
<p>
<a href="#">tonsh</a>
</p>
</div>
</div>

$(”a”).parent()将会得到父对象<p>
$(”a”).parents()得到父对象为<p><div.3><div.1>
$(”a”).parents().filter(”div”)将得到<div.3><div.1>,还可以写成$(”a”).parents(”div”)。
如果想的到<div.2>对象可以写成这样:$(”a”).parents(”div:eq(0)”)。
如果点击<a>链接时弹出<div.2>中的内容该怎么办?

var id=$("a").parents("div:eq(1)").children("div:eq(0)").html(); 

alert(id);

Jquery中的parent()与parents()取父元素的区别相关推荐

  1. jQuery中的closest()和parents()的差别

    jQuery中的closest()和parents()的差别 jQuery中closest()和parents()的作用非常类似,都是向上寻找符合选择器条件的元素,可是他们之间有一些细微的差别,官网也 ...

  2. jquery遍历之parent()和parents()的区别及parentsUntil()方法详解

    转正于:http://www.jb51.net/article/44003.htm 没有图片,请看上面的原文 这篇文章主要介绍了jquery遍历之parent()和parents()的区别及paren ...

  3. jquery中remove()方法移除被选元素,包括所有的文本和子节点

    jquery中remove方法移除被选元素,包括所有的文本和子节点 定义和用法 移除所有的 元素 移除html中指定id的元素内容 定义和用法 remove() 方法移除被选元素,包括所有的文本和子节 ...

  4. jQuery中的parent方法、parents方法

    一.parent()方法: parent([expr]) :取得一个包含着所有匹配元素的唯一父元素的元素集合. html代码如下: <form><input type="r ...

  5. jquery遍历之parent()与parents()的区别 及 parentsUntil() 方法

    .parent(selector) 获得当前匹配元素集合中每个元素的父元素,由选择器筛选(可选). .parents(selector) 获得当前匹配元素集合中每个元素的祖先元素,由选择器筛选(可选) ...

  6. vue学习:事件传递(冒泡和捕获),事件委托,jquery中的事件委托,$event 获取元素,vue事件修饰符

    事件传递 ----冒泡和捕获 DOM事件标准定义了两种事件流,这两种事件流分别是捕获和冒泡. 和许多Web技 术一样,在它们成为标准之前,Netscape和微软各自不同地实现了它们.Netscape选 ...

  7. jQuery中append()、prepend()与after()、before()的区别

    原文地址:https://www.cnblogs.com/afei-qwerty/p/6682963.html 在jQuery中,添加元素有append().prepend()和 after().be ...

  8. 如何寻找数组中最大值与最小值(取双元素法)

    取双元素法.维持两个变量MAX_VALUE和MIN_VALUE,MAX_VALUE标记为最大值,MIN_VALUE标记为最小值,每次比较相邻的两个数,较大者与max比较,较小者与min比较,通过比较找 ...

  9. html load方法的区别,jQuery  中的.load()、$get()、$,post()用法和区别

    .load()方法是局部方法,因为他需要一个包含元素的jQuery 对象作为前缀.而$.get()和$.post()是全局方法,无须指定某个元素.对于用途而言,.load()适合做静态文件的异步获取, ...

最新文章

  1. 蓝桥杯审核要多久_商标审核要多久?
  2. wireshark应用--wireshark原来那么简单
  3. 人工智能的本质:最优化 (神经网络优化算法python手写实现)
  4. python找出矩阵中的马鞍点_矩阵的马鞍点
  5. JDBC(九)DatabaseMetaData 数据库元数据
  6. 这三个Offer,你怎么选?
  7. Halcon算子学习:create_surface_model
  8. php如何打印程序运行时间,php计算程序运行时间的简单实例 - microtime
  9. java封装数组_Java封装数组之动态数组实现方法详解
  10. SQLServer基础之数据页类型:GAM,SGAM,PFS
  11. float 为什么可以表示很大的整数
  12. 面试Python时,面试官最喜欢问这些技术问题
  13. 打开文件、网页、文件夹等
  14. 阿里电话面试(算法工程师)
  15. Android View事件分发机制
  16. 什么是搜索引擎关键词?搜索引擎关键词优化
  17. c# 身份证地区码返回地区名 [对照表]
  18. 最新公路测量计算机,工地通路测电脑版
  19. 林亦杉厦门大学计算机学院,挥别厦大,点燃未来-厦门大学计算机科学系
  20. Alios things资料篇

热门文章

  1. 小米论坛用户数据遭泄漏
  2. 21th Training
  3. 公司让给客户发国庆祝福短信怎么快速完成
  4. win10系统魔兽世界无法连接服务器地址,win10系统无法更新魔兽世界提示正在等待另一项安...
  5. Linux系统(根目录下)目录介绍
  6. 程序员面试金典(第6版)
  7. 实现负债均衡的方式与负债均衡算法
  8. REST-Framework: RESTful规范
  9. 经典网络vgg应用于 图像二分类的训练代码
  10. 每日 30 秒 ⏱ 千里姻缘一线牵