Jquery搜索父元素操作方法

 更新时间:2015年02月10日 12:10:21   作者:woshisap  
这篇文章主要介绍了Jquery搜索父元素操作方法,实例分析了parents、cloest、parent、parentsUtil及offsetParent方法的使用技巧,需要的朋友可以参考下

本文实例讲述了Jquery搜索父元素操作方法。分享给大家供大家参考。具体分析如下:

1. parents()方法

格式:

复制代码 代码如下:
parents([selector])
用于获取当前匹配元素集合中每个元素的祖先元素,根据需要还可以使用一个选择器进行筛选。
如:
复制代码 代码如下:
$("p").parents().css("border", "1px solid blue);

2. cloest方法

格式:

复制代码 代码如下:
closest(selector[, context])
该方法从元素本身开始,逐级向上级元素匹配,并返回最先匹配的元素。
如:
复制代码 代码如下:
$("a").closest("div").css("border", "1px solid blue");

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

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

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

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

3. parent()方法

格式:

复制代码 代码如下:
parent([selector])
用于获取当前匹配元素集合中每个元素的父元素,根据需要,还可以使用一个选择器进行筛选。

如:

复制代码 代码如下:
$("p").parent().css("border", "1px solid blue");

4. parentsUtil()方法

格式:

复制代码 代码如下:
parentsUtil([selector])
用于获取当前匹配元素集合中每个元素的祖先元素,直至给定选择器匹配的元素(但不包括该元素)

如:

复制代码 代码如下:
$("li#li2").parentsUtil("#ul1_li2").css("background", "#FCF");

5. offsetParent()方法

用于搜索第一个匹配元素的已定位的父元素,仅对可见元素有效,语法格式如下:

复制代码 代码如下:
offsetParent()

该方法查找第一个匹配元素的已定位元素,并返回由该元素包装成的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> 
<script src="jquery-1.4.2.js" type="text/javascript"></script> 
<script language="javascript" type="text/javascript"> 
  $(document).ready(function(){ 
    $("p").parent().css("border","1px solid #999");  //给p元素的父元素添加边框样式 
    $("p").closest("div").css("color","blue");       //给指定p元素的第一个匹配的上级元素设置字体颜色 
    $("li").parents("div").css("background","#FCF").css("height","40px");//设置li祖辈元素中div元素的样式。 
    $("p").css("background","#99C"); 
    }) 
</script> 
<style type="text/css"> 
   #top_div{ margin-top:4px; margin-left:30px;} 
   #top_div ul{ display:inline; list-style-type:none; margin:0px;} 
   #top_div li{ float:left; display:block; text-align:left; margin-left:2px; width:80px; padding-top:10px;} 
   #main_div{ margin-top:50px; margin-left:30px;} 
</style> 
</head> 
 
<body> 
<div id="top_div"> 
 <ul> 
    <li>新闻</li> 
    <li>网页</li> 
    <li>贴吧</li> 
    <li>知道</li> 
    <li>MP3</li> 
    <li>图片</li> 
    <li>视频</li> 
    <li>地图</li> 
 </ul>  
</div> 
<div id="main_div"> 
   <h3>标题一</h3> 
   <p>段落一</p> 
   <h3>标题二</h3> 
   <p>段落二</p> 
   <h3>标题三</h3> 
   <p>段落三</p> 
</div> 
 
</body> 
</html>

运行效果如下图所示:

希望本文所述对大家的jQuery程序设计有所帮助。

相关文章

  • 分享15个大家都熟知的jquery小技巧

    分享15个大家都熟知的jquery小技巧

    这篇文章主要分享了15个大家都熟知的jquery小技巧,帮助提高你jQuery应用的简单小技巧,感兴趣的小伙伴们可以参考一下
    2015-12-12
  • 简单实现jQuery进度条轮播实例代码

    简单实现jQuery进度条轮播实例代码

    这篇文章主要为大家详细介绍了简单实现jQuery进度条轮播实例代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-06-06
  • jquery ztree实现右键收藏功能

    jquery ztree实现右键收藏功能

    最近做项目需要使用ztree做一个右键收藏功能,下面小编给大家分享实例代码,需要的朋友参考下吧
    2017-11-11
  • jquery一句话全选/取消全选

    jquery一句话全选/取消全选

    因为后台要用到该功能,熟悉了下jquery的选择器功能。便实现了jquery版的全选。感觉jquery确实比用javascript节省很多劳力啊..呵呵
    2011-03-03
  • 如何确保JavaScript的执行顺序 之jQuery.html深度分析

    如何确保JavaScript的执行顺序 之jQuery.html深度分析

    在上一篇文章《如何确保JavaScript的执行顺序 - 之实战篇》中,我们发现jQuery的html函数能够确保动态加载的JavaScript按照引入顺序执行。
    2011-03-03
  • jQuery仿gmail实现fixed布局的方法

    jQuery仿gmail实现fixed布局的方法

    这篇文章主要介绍了jQuery仿gmail实现fixed布局的方法,涉及jQuery操作页面元素属性的相关技巧,需要的朋友可以参考下
    2015-05-05
  • jQuery标签编辑插件Tagit使用指南

    jQuery标签编辑插件Tagit使用指南

    jQuery 的 tagit 插件效果还是不错的,今天用到该插件,下面给大家详细讲解下此插件的具体用法。这里推荐给大家,有需要的小伙伴可以参考下。
    2015-04-04
  • jQuery div拖拽用法实例

    jQuery div拖拽用法实例

    这篇文章主要介绍了jQuery div拖拽用法,以完整实例形式分析了jQuery结合UI插件实现拖拽功能的相关技巧,需要的朋友可以参考下
    2016-01-01
  • jquery判断checkbox(复选框)是否被选中的代码

    jquery判断checkbox(复选框)是否被选中的代码

    现在很多朋友都喜欢使用jquery了,所以很多的表格判断都是基于jquery的,但实现方法与javascript原生代码不同,对于checkbox的判断大家可以参考下。
    2010-10-10
  • jquery select(列表)的操作(取值/赋值)

    jquery select(列表)的操作(取值/赋值)

    因为工作的原因,从上周开始接触了jquery,以前我是自己写js的函数库,把一些常用的的方法写成函数,现在学习了jquery,发现还真是方便。不尽简洁了很多。用Ajax很方便,而且还可以很方便创造一些特效。
    2009-08-08

最新评论