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 相关文章推荐
Kibo 用于处理键盘事件的Javascript工具库
Oct 28 Javascript
javascript数组去重方法终极总结
Jun 05 Javascript
对于jQuery性能的一些优化建议
Aug 13 Javascript
通过js获取上传的图片信息(临时保存路径,名称,大小)然后通过ajax传递给后端的方法
Oct 01 Javascript
jQuery 1.9.1源码分析系列(十)事件系统之绑定事件
Nov 19 Javascript
js简单判断移动端系统的方法
Feb 25 Javascript
微信小程序 wx.request(接口调用方式)详解及实例
Nov 23 Javascript
微信小程序 开发之滑块视图容器(swiper)详解及实例代码
Feb 22 Javascript
jquery实现自定义图片裁剪功能【推荐】
Mar 08 Javascript
JavaScript中关于class的调用方法
Nov 28 Javascript
webpack 如何同时输出压缩和未压缩的文件的实现步骤
Jun 05 Javascript
vue+AI智能机器人回复功能实现
Jul 16 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
第十四节 命名空间 [14]
2006/10/09 PHP
php下目前为目最全的CURL中文说明
2010/08/01 PHP
php通过字符串调用函数示例
2014/03/02 PHP
thinkphp判断访客为手机端或PC端的方法
2014/11/24 PHP
php通过array_push()函数添加多个变量到数组末尾的方法
2015/03/18 PHP
php的crc32函数使用时需要注意的问题(不然就是坑)
2015/04/21 PHP
php实现对象克隆的方法
2015/06/20 PHP
phpstudy的php版本自由修改的方法
2017/10/18 PHP
自动更新作用
2006/10/08 Javascript
js 实现打印网页中定义的部分内容的代码
2010/04/01 Javascript
网络之美 JavaScript中Get和Set访问器的实现代码
2010/09/19 Javascript
javaScript复制功能调用实现方案
2012/12/13 Javascript
JavaScript实现同一页面内两个表单互相传值的方法
2015/08/12 Javascript
实例讲解javascript注册事件处理函数
2016/01/09 Javascript
Canvas实现动态的雪花效果
2017/02/13 Javascript
AngularJs+Bootstrap实现漂亮的计算器
2017/08/10 Javascript
详解Vue.js Mixins 混入使用
2017/09/15 Javascript
vue-router 源码之实现一个简单的 vue-router
2018/07/02 Javascript
详解小程序设置缓存并且不覆盖原有数据
2019/04/15 Javascript
jQuery 动画与停止动画效果实例详解
2020/05/19 jQuery
[04:32]DOTA2著名解说配音敌法师 现场专访海涛怒切假腿
2013/12/20 DOTA
详解Python编程中包的概念与管理
2015/10/16 Python
Python实现压缩与解压gzip大文件的方法
2016/09/18 Python
Python生成短uuid的方法实例详解
2018/05/29 Python
pytorch中使用cuda扩展的实现示例
2020/02/12 Python
python 对任意数据和曲线进行拟合并求出函数表达式的三种解决方案
2020/02/18 Python
Python爬虫实现模拟点击动态页面
2020/03/05 Python
Python pip install如何修改默认下载路径
2020/04/29 Python
python自动打开浏览器下载zip并提取内容写入excel
2021/01/04 Python
CSS3制作气泡对话框的实例教程
2016/05/10 HTML / CSS
加拿大最大的箱包及旅游配件零售商:Bentley Leathers
2017/07/19 全球购物
《绿色蝈蝈》教学反思
2014/03/02 职场文书
中秋节主题班会
2015/08/14 职场文书
2016年清明节网上祭英烈活动总结
2016/04/01 职场文书
mybatis源码解读之executor包语句处理功能
2022/02/15 Java/Android
css3 文字断裂效果
2022/04/22 HTML / CSS