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


Posted in Javascript onMay 23, 2014

获取指定元素的兄弟元素时,可以使用adjacent sibling combinator (+),其中+的两侧内容都是selector expression.
如果要获取下例中所有的 h1的直接兄弟元素h2

<div> 
<h1>Main title</h1> 
<h2>Section title</h2> 
<p>Some content...</p> 
<h2>Section title</h2> 
<p>More content...</p> 
</div>

可以直接使用
$('h1 + h2') 
// Select ALL h2 elements that are adjacent siblings of H1 elements.

如果要过滤h1的兄弟元素,当然也可以使用
$('h1').siblings('h2,h3,p'); 
// Select all H2, H3, and P elements that are siblings of H1 elements.

如果要获取当前元素之后的所有兄弟元素,可以使用nextAll()
例如,针对下面的html代码
<ul> 
<li>First item</li> 
<li class="selected">Second Item</li> 
<li>Third item</li> 
<li>Fourth item</li> 
<li>Fifth item</li> 
</ul>

如果要获取第二个条目之后的所有li元素,可以使用如下代码
$('li.selected').nextAll('li');

上例也可以使用general sibling combinator (~)来实现
$('li.selected ~ li');

获取直接兄弟元素也可以不使用selector,直接使用next().
var topHeaders = $('h1'); 
topHeaders.next('h2').css('margin', '0);
Javascript 相关文章推荐
JavaScript DOM 学习第七章 表单的扩展
Feb 19 Javascript
JS继承 笔记
Jul 13 Javascript
Node.js中HTTP模块与事件模块详解
Nov 14 Javascript
Javascript基础教程之函数对象和属性
Jan 18 Javascript
Javascript实现Array和String互转换的方法
Dec 21 Javascript
100多个基础常用JS函数和语法集合大全
Feb 16 Javascript
微信小程序中使用javascript 回调函数
May 11 Javascript
微信小程序 蓝牙的实现实例代码
Jun 27 Javascript
js判断用户是输入的地址请求的路径(实例讲解)
Jul 18 Javascript
vue单文件组件lint error自动fix与styleLint报错自动fix详解
Jan 08 Javascript
js全屏事件fullscreenchange 实现全屏、退出全屏操作
Sep 17 Javascript
.netcore+vue 实现压缩文件下载功能
Sep 24 Javascript
jquery 中的each()跳出循环的语句
May 23 #Javascript
Jquery给基本控件的取值、赋值示例
May 23 #Javascript
js动态修改整个页面样式达到换肤效果
May 23 #Javascript
js统计录入文本框中字符的个数并加以限制不超过多少
May 23 #Javascript
javascript为下拉列表动态添加数据项
May 23 #Javascript
js检测网络是否具体连接功能的代码
May 23 #Javascript
JS实现距离上次刷新已过多少秒示例
May 23 #Javascript
You might like
php中filter_input函数用法分析
2014/11/15 PHP
Nigma vs Alliance BO5 第三场2.14
2021/03/10 DOTA
浅谈JavaScript中面向对象技术的模拟
2006/09/25 Javascript
JS解密入门之凭直觉解
2008/06/25 Javascript
js中关于new Object时传参的一些细节分析
2011/03/13 Javascript
深入理解JavaScript作用域和作用域链
2011/10/21 Javascript
jquery1.83 之前所有与异步列队相关的模块详细介绍
2012/11/13 Javascript
js/jquery解析json和数组格式的方法详解
2014/01/09 Javascript
JavaScript实现三阶幻方算法谜题解答
2014/12/29 Javascript
JS获取iframe中marginHeight和marginWidth属性的方法
2015/04/01 Javascript
ReactNative 之FlatList使用及踩坑封装总结
2017/11/29 Javascript
Vue props 单向数据流的实现
2018/11/06 Javascript
vue-week-picker实现支持按周切换的日历
2019/06/26 Javascript
微信小程序 Storage更新详解
2019/07/16 Javascript
功能完善的小程序日历组件的实现
2020/03/31 Javascript
vue $mount 和 el的区别说明
2020/09/11 Javascript
js实现拖拽与碰撞检测
2020/09/18 Javascript
ES11新增的这9个新特性,你都掌握了吗
2020/10/15 Javascript
JavaScript实现图片放大预览效果
2020/11/02 Javascript
解决Mint-ui 框架Popup和Datetime Picker组件滚动穿透的问题
2020/11/04 Javascript
Vue.js桌面端自定义滚动条组件之美化滚动条VScroll
2020/12/01 Vue.js
[00:12]DAC2018 no[o]ne亮相SOLO赛 他是否如他的id一样无人可挡?
2018/04/06 DOTA
[49:08]完美世界DOTA2联赛PWL S2 LBZS vs FTD.C 第一场 11.27
2020/12/01 DOTA
python合并文本文件示例
2014/02/07 Python
python批量修改xml属性的实现方式
2020/03/05 Python
python实现单张图像拼接与批量图片拼接
2020/03/23 Python
python实现邮件循环自动发件功能
2020/09/11 Python
香港化妆品经销商:我的公主
2016/08/05 全球购物
加拿大最大的五金、家居装修和园艺产品商店:RONA
2017/01/27 全球购物
爱奇艺VIP会员:大剧抢先看
2018/07/11 全球购物
如何估计一张表的大小(假设该表中有1万条数据)
2016/03/27 面试题
商务日语毕业生自荐信范文
2013/11/14 职场文书
酒店秘书求职信范文
2014/02/17 职场文书
金融保险专业求职信
2014/09/03 职场文书
房产销售独家委托书范本
2014/10/01 职场文书
SpringBoot2零基础到精通之数据与页面响应
2022/03/22 Java/Android