jquery选择器之层级过滤选择器详解


Posted in Javascript onJanuary 27, 2014
$("ancestor descendant"):选取parent元素后所有的child元素
$("parent > child"):选取parent元素后所有的直属child元素,何谓“直属”,也就是第一级的意思了
$("prev + next"):prev和next是两个同级别的元素. 选中在prev元素后面的next元素
$("prev ~ siblings"):选择prev后面的根据siblings过滤的元素。注:siblings是过滤器

后两个用的比较少,一般会有其他选择器替代
$("prev + next")等价于next()
$("prev ~ siblings")等价于nextAll()

实例:
<style type="text/css">
  /*高亮显示*/
  .highlight{   
   background-color: gray
  }
 </style>

<body>
    <div>
     <p id="p1">第一个DIV里面的P元素。</p>
    </div>
    <p id="p2">第一个单P元素。</p>
    <div>
     <span>DIV里面的SPAN元素。</span>
     <p id="p3">第二个DIV里面的P元素。</p>
     <span>
      <p id="p4">DIV里面的SPAN里面的P元素。</p>
     </span>
    </div>
     <table>
      <tr>
       <th>A</th><th>B</th><th>C</th>
      </tr>
      <tr>
       <td>1</td><td>2</td><td>3</td>
      </tr>
     </table>
     <p id="p5">第二个单P元素。</p>
     <span>单SPAN元素。</span>
  </body>

var s = $("div p").addClass("highlight"); //选取div后面的所有p元素   结果为:p1,p3,p4

jquery选择器之层级过滤选择器详解
var s = $("div > p").addClass("highlight"); //选取div后 所有第一级p元素   结果为:p1,p3。p4不会选取,因为p4不是div的直属元素

jquery选择器之层级过滤选择器详解
var s = $("div + p").addClass("highlight");   //选取div后面紧邻的p元素  结果为:p2。p5不会选取,因为p5不紧邻div

jquery选择器之层级过滤选择器详解
var s = $("div ~ p").addClass("highlight");     //选取div后面所有紧邻的p元素  结果为:p2,p5

jquery选择器之层级过滤选择器详解
Javascript 相关文章推荐
javascript Base类 包含基本的方法
Jul 22 Javascript
jQuery jqgrid 对含特殊字符json 数据的 Java 处理方法
Jan 01 Javascript
JavaScript 高级篇之闭包、模拟类,继承(五)
Apr 07 Javascript
使用jQuery.fn自定义jQuery翻页插件
Jan 20 Javascript
延时加载JavaScript代码提高速度
Dec 27 Javascript
深入理解JavaScript定时机制
Oct 27 Javascript
限时抢购-倒计时的完整实例(分享)
Sep 17 Javascript
实现一个完整的Node.js RESTful API的示例
Sep 29 Javascript
JS设计模式之访问者模式定义与用法分析
Feb 05 Javascript
Vue Promise的axios请求封装详解
Aug 13 Javascript
微信小程序实现滑动切换自定义页码的方法分析
Dec 29 Javascript
使用Cargo工具高效创建Rust项目
Aug 14 Javascript
jquery选择器之内容过滤选择器详解
Jan 27 #Javascript
jquery选择器之属性过滤选择器详解
Jan 27 #Javascript
jQuery自定义事件的简单实现代码
Jan 27 #Javascript
jQuery中bind与live的用法及区别小结
Jan 27 #Javascript
jQuery实现动画效果的简单实例
Jan 27 #Javascript
firefox下jquery ajax返回object XMLDocument处理方法
Jan 26 #Javascript
js修改原型的属性使用介绍
Jan 26 #Javascript
You might like
一段php加密解密的代码
2006/10/09 PHP
php给每个段落添加空格的方法
2015/03/20 PHP
PHP实现随机生成水印图片功能
2017/03/22 PHP
phpStudy vscode 搭建debug调试的教程详解
2020/07/28 PHP
Javascript面象对象成员、共享成员变量实验
2010/11/19 Javascript
JS版的date函数(和PHP的date函数一样)
2014/05/12 Javascript
node.js开发中使用Node Supervisor实现监测文件修改并自动重启应用
2014/11/04 Javascript
AngularJS入门教程(一):静态模板
2014/12/06 Javascript
简述AngularJS相关的一些编程思想
2015/06/23 Javascript
Javascript 调用 ActionScript 的简单方法
2016/09/22 Javascript
JS实现颜色动态淡化效果
2017/03/06 Javascript
jQuery tip提示插件(实例分享)
2017/04/28 jQuery
旺旺在线客服代码 旺旺客服代码生成器
2018/01/09 Javascript
vue.js移动数组位置,同时更新视图的方法
2018/03/08 Javascript
vue2中使用sass并配置全局的sass样式变量的方法
2018/09/04 Javascript
Vue项目部署的实现(阿里云+Nginx代理+PM2)
2019/03/26 Javascript
解决vue与node模版引擎的渲染标记{{}}(双花括号)冲突问题
2020/09/11 Javascript
让 python 命令行也可以自动补全
2014/11/30 Python
Python3处理文件中每个词的方法
2015/05/22 Python
python编程开发之textwrap文本样式处理技巧
2015/11/13 Python
学习python之编写简单简单连接数据库并执行查询操作
2016/02/27 Python
Python开发的实用计算器完整实例
2017/05/10 Python
Python OpenCV处理图像之图像直方图和反向投影
2018/07/10 Python
如何在python开发工具PyCharm中搭建QtPy环境(教程详解)
2020/02/04 Python
调整Jupyter notebook的启动目录操作
2020/04/10 Python
python os模块常用的29种方法使用详解
2020/06/02 Python
通信生自我鉴定
2014/01/18 职场文书
学习雷锋寄语大全
2014/04/11 职场文书
党员公开承诺书内容
2014/05/20 职场文书
作风建设演讲稿
2014/05/23 职场文书
镇班子对照检查材料思想汇报
2014/09/24 职场文书
国际贸易实训报告
2014/11/05 职场文书
公司要求试用期员工提交“述职报告”,该怎么写?
2019/07/17 职场文书
浅谈Redis主从复制以及主从复制原理
2021/05/29 Redis
python机器学习创建基于规则聊天机器人过程示例详解
2021/11/02 Python
HTML实现仿Windows桌面主题特效的实现
2022/06/28 HTML / CSS