Jquery搜索父元素操作方法


Posted in Javascript onFebruary 10, 2015

本文实例讲述了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搜索父元素操作方法

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

Javascript 相关文章推荐
jquery.validate使用攻略 第三部
Jul 01 Javascript
jQuery中判断一个元素是否为另一个元素的子元素(或者其本身)
Mar 21 Javascript
JavaScript可否多线程? 深入理解JavaScript定时机制
May 23 Javascript
JS 两个字符串时间的天数差计算
Aug 25 Javascript
js实现目录定位正文示例
Nov 14 Javascript
JavaScript中如何通过arguments对象实现对象的重载
May 12 Javascript
jQuery实现下滑菜单导航效果代码
Aug 25 Javascript
微信小程序 详解Page中data数据操作和函数调用
Jan 12 Javascript
微信小程序使用progress组件实现显示进度功能【附源码下载】
Dec 12 Javascript
解决koa2 ctx.render is not a function报错问题
Aug 07 Javascript
vue中input的v-model清空操作
Sep 06 Javascript
基于Echarts图表在div动态切换时不显示的解决方式
Jul 20 Javascript
jQuery表单域属性过滤器用法分析
Feb 10 #Javascript
jQuery子属性过滤选择器用法分析
Feb 10 #Javascript
jQuery内容过滤选择器用法分析
Feb 10 #Javascript
jQuery过滤选择器用法分析
Feb 10 #Javascript
jQuery表单域选择器用法分析
Feb 10 #Javascript
jQuery层级选择器用法分析
Feb 10 #Javascript
Jquery中CSS选择器用法分析
Feb 10 #Javascript
You might like
社区(php&amp;&amp;mysql)四
2006/10/09 PHP
使用 MySQL 开始 PHP 会话
2006/12/21 PHP
浅析php中常量,变量的作用域和生存周期
2013/08/10 PHP
基于ThinkPHP+uploadify+upload+PHPExcel 无刷新导入数据
2015/09/23 PHP
yii2.0整合阿里云oss上传单个文件的示例
2017/09/19 PHP
Yii框架使用PHPExcel导出Excel文件的方法分析【改进版】
2019/07/24 PHP
Prototype中dom对象方法汇总
2008/09/17 Javascript
js 调用本地exe的例子(支持IE内核的浏览器)
2012/12/26 Javascript
JavaScript学习笔记之定时器
2015/01/22 Javascript
jQuery实现hover合成事件的方法
2015/08/06 Javascript
jQuery实现仿新浪微博浮动的消息提示框(可智能定位)
2015/10/10 Javascript
AngularJS基础 ng-hide 指令用法及示例代码
2016/08/01 Javascript
纯JS实现弹性导航条效果
2017/03/06 Javascript
Bootstrap Table使用整理(二)
2017/06/09 Javascript
Vue数据双向绑定的深入探究
2018/11/27 Javascript
浅谈发布订阅模式与观察者模式
2019/04/09 Javascript
Vue.js构建你的第一个包并在NPM上发布的方法步骤
2019/05/01 Javascript
在Vue项目中,防止页面被缩放和放大示例
2019/10/28 Javascript
详解如何修改 node_modules 里的文件
2020/05/22 Javascript
Javascript confirm多种使用方法解析
2020/09/25 Javascript
vue中defineProperty和Proxy的区别详解
2020/11/30 Vue.js
python里大整数相乘相关技巧指南
2014/09/12 Python
python 如何快速找出两个电子表中数据的差异
2017/05/26 Python
PyQt编程之如何在屏幕中央显示窗体的实例
2019/06/18 Python
浅谈python中统计计数的几种方法和Counter详解
2019/11/07 Python
在tensorflow下利用plt画论文中loss,acc等曲线图实例
2020/06/15 Python
python能自学吗
2020/06/18 Python
实例教程 HTML5 Canvas 超炫酷烟花绽放动画实现代码
2014/11/05 HTML / CSS
HTML5中input[type='date']自定义样式与日历校验功能的实现代码
2017/07/11 HTML / CSS
美国宠物美容和宠物用品购物网站:Cherrybrook
2018/12/07 全球购物
2014年大学庆元旦迎新年活动方案
2014/03/09 职场文书
土木工程求职信
2014/05/29 职场文书
人力资源职位说明书
2014/07/29 职场文书
党员创先争优心得体会
2014/09/11 职场文书
2015年档案管理员工作总结
2015/05/13 职场文书
MySQL慢查询中的commit慢和binlog中慢事务的区别
2022/06/16 MySQL