使用jquery获取父元素或父节点的方法

jquery获取父元素方法比较多,比如parent(),parents(),closest()这些都能帮你实现查找父元素或节点,下面我们来一一讲解:

先举个例子,

1.<ul class="parent1">

  2.<li><a href="#" id="item1">jquery获取父节点</a></li>

  3.<li><a href="#">jquery获取父元素</a></li>

  4.</ul>

 

我们的目的是通过 id 为 item1 的便签a取到 class 为 parent1 的ul元素,有以下几种方法:

1、parent([expr])

取得一个包含着所有匹配元素的唯一父元素的元素集合。

你可以使用可选的表达式来筛选。

代码如下

1.$('#item1').parent().parent('.parent1');

2、:parent

匹配含有子元素或者文本的元素

代码如下

 

  1.$('li:parent'); 

3、parents([expr])

取得一个包含着所有匹配元素的祖先元素的元素集合(不包含根元素)。可以通过一个可选的表达式进行筛选。

代码如下

   1.$('#items').parents('.parent1');

  4、closest([expr])

closest会首先检查当前元素是否匹配,如果匹配则直接返回元素本身。如果不匹配则向上查找父元素,一层一层往上,直到找到匹配选择器的元素。如果什么都没找到则返回一个空的jQuery对象。

closest和parents的主要区别是:1,前者从当前元素开始匹配寻找,后者从父元素开始匹配寻找;2,前者逐级向上查找,直到发现匹配的元素后 就停止了,后者一直向上查找直到根元素,然后把这些元素放进一个临时集合中,再用给定的选择器表达式去过滤;3,前者返回0或1个元素,后者可能包含0 个,1个,或者多个元素。

closest对于处理事件委派非常有用。

1.$('#items1').closest('.parent1');


原文地址:http://www.cnblogs.com/weixing/archive/2012/03/20/2407618.html

时间: 2024-11-01 04:30:54

使用jquery获取父元素或父节点的方法的相关文章

jQuery 获取兄弟元素的几种不错方法_jquery

获取指定元素的兄弟元素时,可以使用adjacent sibling combinator (+),其中+的两侧内容都是selector expression. 如果要获取下例中所有的 h1的直接兄弟元素h2 复制代码 代码如下: <div> <h1>Main title</h1> <h2>Section title</h2> <p>Some content...</p> <h2>Section title<

jQuery获取父元素及父节点的方法小结_jquery

本文实例总结了jQuery获取父元素及父节点的方法.分享给大家供大家参考,具体如下: jquery获取父元素方法比较多,比如parent(),parents(),closest()这些都能帮你实现查找父元素或节点,下面我们来一一讲解: 先举个例子, <ul class="parent1"> <li><a href="#" id="item1">jquery获取父节点</a></li> &

js jquery获取当前元素的兄弟级 上一个 下一个元素_jquery

var chils= s.childNodes;  //得到s的全部子节点 var par=s.parentNode;   //得到s的父节点 var ns=s.nextSbiling;   //获得s的下一个兄弟节点 var ps=s.previousSbiling;  //得到s的上一个兄弟节点 var fc=s.firstChild;   //获得s的第一个子节点 var lc=s.lastChile;   //获得s的最后一个子节点 JS获取节点父级,子级元素 先说一下JS的获取方法,其

jQuery动态创建元素以及追加节点的实现方法_jquery

我们知道js中有三种动态创建元素的方法,jQuery中也可以动态的创建元素 例如: var str = $("<a href='http://www.jb51.net'></a>"); $("ul").append(str); //将动态创建的str元素追加到ul下面 追加节点 在js当中追加节点的方法是appendChild(节点元素)和insertBefor(节点元素,位置),在jQuery中是 append 追加在父元素的最后一个子节点

jQuery获取页面元素绝对与相对位置的方法

 本文实例讲述了jQuery获取页面元素绝对与相对位置的方法.分享给大家供大家参考.具体如下: 获取页面某一元素的绝对X,Y坐标,可以用offset()方法: 1 2 var X = $('#DivID').offset().top; var Y = $('#DivID').offset().left; 获取相对(父元素)位置: 1 2 3 4 var X = $('#DivID').position().top; var Y = $('#DivID').position().left; var

jQuery获取页面元素绝对与相对位置的方法_jquery

本文实例讲述了jQuery获取页面元素绝对与相对位置的方法.分享给大家供大家参考.具体如下: 获取页面某一元素的绝对X,Y坐标,可以用offset()方法: var X = $('#DivID').offset().top; var Y = $('#DivID').offset().left; 获取相对(父元素)位置: var X = $('#DivID').position().top; var Y = $('#DivID').position().left; var pleft = $("s

JavaScript实现获取某个元素相邻兄弟节点的prev与next方法_javascript技巧

本文实例讲述了JavaScript实现获取某个元素相邻兄弟节点的prev与next方法.分享给大家供大家参考,具体如下: /** * 获取相邻元素 * @param ele 参考物元素 * @param type 类型,上一个(1)or下一个(0) * @return 返回查找到的元素Dom对象,无则返回null */ function getNearEle(ele, type) { type = type == 1 ? "previousSibling" : "nextSi

jquery获取当前元素索引值用法实例_jquery

本文实例讲述了jquery获取当前元素索引值用法.分享给大家供大家参考.具体如下: 今天在做促销页面的图片轮转效果时,下方页码的左边需要对应显示图片的说明信息,效果如下: 思路: 页面部分当为当前状态的时候,会添加"active"样式. 通过获取 li class="active" 的索引值,对应找到相应的图片说明信息,显示出来. 解决: 通过jquery的 index() 可以很轻松的实现该效果. 代码如下: HTML: <div id="caro

jQuery获取同级元素的简单代码_jquery

next()相邻下一个同级元素 prev()相邻上一个同级元素 siblings()所有同级元素 $("#id").next(); $("#id").prev(); $("#id").siblings(); 以上这篇jQuery获取同级元素的简单代码就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持. 以上是小编为您精心准备的的内容,在的博客.问答.公众号.人物.课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索j

JavaScript跨浏览器获取页面中相同class节点的方法

 这篇文章主要介绍了JavaScript跨浏览器获取页面中相同class节点的方法,本文讲解使用getELementsByClassName函数解决这个需求,并给了一个开源的getELementsByClassName函数实现,功能更加强大,需要的朋友可以参考下     网页开发时,在很多时候我们需要操作相同类名的元素,即class相同的元素.昨天参加笔试,有一道相关的题目没答上来: JavaScript获取页面中class为test的节点 于是收集了一些相关的资料,在本文中列举了两种我觉得比较