使用jquery选择器如何获取父级元素、同级元素、子元素


Posted in Javascript onMay 14, 2014

一、获取父级元素

1、 parent([expr]):

获取指定元素的所有父级元素

<div id="par_div"><a id="href_fir" href="#">href_fir</a> 
<a id="href_sec" href="#">href_sec</a> 
<a id="href_thr" href="#">href_thr</a></div> 
<span id="par_span"> 
<a id="href_fiv" href="#">href_fiv</a> 
</span> 
$(document).ready(function(){ 
$("a").parent().addClass('a_par'); 
});

firebug查看jquery parent效果

二、获取同级元素:

1、next([expr]):
获取指定元素的下一个同级元素(注意是下一个同级元素哦)

<!DOCTYPE html> 
<html> 
<head> 
<script type="text/javascript" src="/jquery/jquery.js"></script> 
</head> <body> 
<ul> 
<li>list item 1</li> 
<li>list item 2</li> 
<li class="third-item">list item 3</li> 
<li>list item 4</li> 
<li>list item 5</li> 
</ul> 
<script> 
$('li.third-item').next().css('background-color', 'red'); 
</script> 
</body> 
</html>

这个例子的结果是,只有list item 4背景色变为红色

2、nextAll([expr]):

获取指定元素后边的所有同级元素

<div><span>And Again</span></div> 
var p_nex = $("p").nextAll(); 
p_nex.addClass('p_next_all');

注意看最后一个”<p>”标签哦,也被加上了'p_next_all'这个类名哦~~

3、andSelf():

获取指定元素后边的所有同级元素,之后加上指定的元素

我感觉这个函数是最有意思的一个函数了,什么意思?直译过来就是”还有我“,”还有自己”,没错,还有自己。

<p>Hello</p><p>Hello Again</p><div><span>And Again</span></div> 
var p_nex = $("p").nextAll().andSelf(); 
p_nex.addClass('p_next_all');

注意看第一个“<p>”标签啊,这句话的意思是选择p标签后面的所有同级标签,以及自己。。。

以下这两个不举具体的例子了,实际上就是next()和nextAll()的相反喽

4、prev():获取指定元素的上一个同级元素(是上一个哦)。

5、prevAll():获取指定元素的前边所有的同级元素。

三、获取子元素

1、查找子元素方式1:>

例如:var aNods = $("ul > a");查找ul下的所有a标签

2、查找子元素方式2:children()

3、查找子元素方式3:find()

这里再简单介绍以下children()和find()的异同:

1> children及find方法都用是用来获得element的子elements的,两者都不会返回 text node,就像大多数的jQuery方法一样。
2> children方法获得的仅仅是元素一下级的子元素,即:immediate children。
3> find方法获得所有下级元素,即:descendants of these elements in the DOM tree
4> children方法的参数selector 是可选的(optionally),用来过滤子元素,

但find方法的参数selector方法是必选的。

5> find方法事实上可以通过使用 jQuery( selector, context )来实现。即$('li.item-ii').find('li')等同于$('li', 'li.item-ii').

例:

<ul class="level-1"> 
<li class="item-i">I</li> 
<li class="item-ii">II 
<ul class="level-2"> 
<li class="item-a">A</li> 
<li class="item-b">B 
<ul class="level-3"> 
<li class="item-1">1</li> 
<li class="item-2">2</li> 
<li class="item-3">3</li> 
</ul> 
</li> 
<li class="item-c">C</li> 
</ul> 
</li> 
<li class="item-iii">III</li> 
</ul>

使用:$('ul.level-2').children().css('border', '1px solid green'); 的效果是:

使用 $('ul.level-2').find('li').css('border', '1px solid green'); 的效果是:

Javascript 相关文章推荐
关于文本限制字数的js代码
Apr 02 Javascript
javascript与webservice的通信实现代码
Dec 25 Javascript
模拟多级复选框效果的jquery代码
Aug 13 Javascript
将input file的选择的文件清空的两种解决方案
Oct 21 Javascript
多种方法实现load加载完成后把图片一次性显示出来
Feb 19 Javascript
Javascript 浮点运算精度问题分析与解决
Mar 26 Javascript
12种JavaScript常用的MVC框架比较分析
Nov 16 Javascript
详解wow.js中各种特效对应的类名
Sep 13 Javascript
关于vue v-for循环解决img标签的src动态绑定问题
Sep 18 Javascript
js字符串倒序的实例代码
Nov 30 Javascript
微信小程序自定义tabBar在uni-app的适配详解
Sep 30 Javascript
微信小程序后端无法保持session的原因及解决办法问题
Mar 20 Javascript
JavaScript函数获取事件源的小例子
May 14 #Javascript
javascript单引号和双引号的区别和处理
May 14 #Javascript
document.write的几点使用心得
May 14 #Javascript
解决html按钮切换绑定不同函数后点击时执行多次函数问题
May 14 #Javascript
用jQuery toggleClass 实现鼠标移上变色
May 14 #Javascript
jquery ztree实现下拉树形框使用到了json数据
May 14 #Javascript
JQuery性能优化的几点建议
May 14 #Javascript
You might like
php查看session内容的函数
2008/08/27 PHP
php入门之连接mysql数据库的一个类
2012/04/21 PHP
PHP中对缓冲区的控制实现代码
2013/09/29 PHP
PHP遍历目录并返回统计目录大小
2014/06/09 PHP
php如何利用pecl安装mongodb扩展详解
2019/01/09 PHP
基于jquery的模态div层弹出效果
2010/08/21 Javascript
JQuery中如何传递参数如click(),change()等具体实现
2013/04/28 Javascript
javascript实现倒计时N秒后网页自动跳转代码
2014/12/11 Javascript
基于Turn.js 实现翻书效果实例解析
2016/06/20 Javascript
详解XMLHttpRequest(二)响应属性、二进制数据、监测上传下载进度
2016/09/14 Javascript
微信小程序 vidao实现视频播放和弹幕的功能
2016/11/02 Javascript
nodejs 图解express+supervisor+ejs的用法(推荐)
2017/09/08 NodeJs
关于预加载InstantClick的问题解决方法
2017/09/12 Javascript
JavaScript中toLocaleString()和toString()的区别实例分析
2018/08/14 Javascript
微信小程序左右滚动公告栏效果代码实例
2019/09/16 Javascript
浅谈Vue组件单元测试究竟测试什么
2020/02/05 Javascript
python实现倒计时的示例
2014/02/14 Python
使用基于Python的Tornado框架的HTTP客户端的教程
2015/04/24 Python
Python使用reportlab将目录下所有的文本文件打印成pdf的方法
2015/05/20 Python
Python 2.x如何设置命令执行的超时时间实例
2017/10/19 Python
Python简单获取网卡名称及其IP地址的方法【基于psutil模块】
2018/05/24 Python
Python图像滤波处理操作示例【基于ImageFilter类】
2019/01/03 Python
Python计算时间间隔(精确到微妙)的代码实例
2019/02/26 Python
python移位运算的实现
2019/07/15 Python
Python如何筛选序列中的元素的方法实现
2019/07/15 Python
python 上下文管理器及自定义原理解析
2019/11/19 Python
使用Python将Exception异常错误堆栈信息写入日志文件
2020/04/08 Python
python开发入门——列表生成式
2020/09/03 Python
python opencv图像处理(素描、怀旧、光照、流年、滤镜 原理及实现)
2020/12/10 Python
全面介绍python中很常用的单元测试框架unitest
2020/12/14 Python
计算机专业学生的自我评价
2013/12/15 职场文书
回门宴新郎答谢词
2014/01/12 职场文书
逃课上网检讨书
2014/02/20 职场文书
飞机制造技术专业求职信
2014/07/27 职场文书
2014党员民主评议个人总结
2014/09/10 职场文书
总经理助理岗位职责范本
2015/03/31 职场文书