您的位置:首页 > Web前端 > JQuery

使用jQuery查找父元素或父节点的方法

2014-08-19 10:19 706 查看
转载自:http://sdy07290801.blog.163.com/blog/static/13718240220133121545472/
 

 一、获取父元素:

<div id="one" style="position:relative;">
  <div id="two">hello</div>
  <div id="three" style="position:relative;">
  <p><a href="#">tonsh</a></p>
  </div>
</div>

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

     $("a").parent();   //得到父对象<p>

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

    $("a").parents(“div”);    //得到<div.3><div.1> 。
3、cloest:从元素本身开始,逐级向上级元素匹配,并返回最先匹配的元素。

    $("a").closest("div");    //得到<div.3>

cloest()和parents()方法的主要区别如下:

      * 前者从当前元素匹配查找,后者从父元素开始匹配查找

       *前者逐级向上查找,直到发现匹配的元素后就停止了,后者一直向上查找直到根元素,然后把这些元素放进一个临时集合中,再用给定的选择器表达式去过滤。

       *前者返回0或者1个元素,后者可能包含0个、1个或者多个元素。

4、parentsUntil(): 用于获取当前匹配元素集合中每个元素的祖先元素,直至给定选择器匹配的元素(但不包括该元素)。

    $("a").parentsUntil("#one");           //得到的是<div.3><p>,不包括<div.1>

5、offsetParent():用于搜索第一个匹配元素的已定位的父元素,仅对可见元素有效。

    $("a").offsetParent();              //返回<div.3>

======================================================================

二、获取同级元素:

1、prev(),返回上一个兄弟节点,不是所有的兄弟节点。

2、prevAll(),返回所有之前的兄弟节点。

3、next(),返回下一个兄弟节点,不是所有的兄弟节点。

4、nextAll(),返回所有之后的兄弟节点。

5、siblings(),返回兄弟姐妹节点,不分前后。

======================================================================

三、获取子元素:

1:、>:例如:$("ul > a");查找ul下的所有a标签。

2、children():返回所有子节点,这个方法只会返回直接的孩子节点,不会返回所有的子孙节点。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: