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 相关文章推荐
20款效果非常棒的 jQuery 插件小结分享
Nov 18 Javascript
使用js画图之正弦曲线
Jan 12 Javascript
浅谈js中的闭包
Mar 16 Javascript
JS替换字符串中空格方法
Apr 17 Javascript
jquery实现点击展开列表同时隐藏其他列表
Aug 10 Javascript
javascript闭包概念简单解析(推荐)
Jun 03 Javascript
Bootstrap 最常用的JS插件系列总结(图片轮播、标签切换等)
Jul 14 Javascript
Bootstrap整体框架之CSS12栅格系统
Dec 15 Javascript
利用Vue.js实现checkbox的全选反选效果
Jan 18 Javascript
vuex 中插件的编写案例解析
Jun 10 Javascript
刷新页面后让控制台的js代码继续执行
Sep 20 Javascript
JS实现点星星消除小游戏
Mar 24 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 事务处理数据实现代码
2010/05/13 PHP
函数中使用require_once问题深入探讨 优雅的配置文件定义方法推荐
2014/07/02 PHP
字符串长度函数strlen和mb_strlen的区别示例介绍
2014/09/09 PHP
JavaScript setTimeout和setInterval的使用方法 说明
2010/03/25 Javascript
js 实现打印网页中定义的部分内容的代码
2010/04/01 Javascript
javascript 隔行换色函数代码
2010/10/24 Javascript
jquery $.fn $.fx是什么意思有什么用
2013/11/04 Javascript
JS实现遮罩层效果的简单实例
2013/11/12 Javascript
Jquery获取和修改img的src值的方法
2014/02/17 Javascript
js实现的标题栏新消息闪烁提示效果
2014/06/06 Javascript
JQuery中DOM事件冒泡实例分析
2015/06/13 Javascript
jQuery实现在最后一个元素之前插入新元素的方法
2015/07/18 Javascript
Jquery基础教程之DOM操作
2015/08/19 Javascript
jQuery中Chosen三级联动功能实例代码
2017/03/07 Javascript
js模拟百度模糊搜索的实例
2017/08/04 Javascript
微信小程序使用Promise简化回调
2018/02/06 Javascript
详解vue2.6插槽更新v-slot用法总结
2019/03/09 Javascript
浅谈Vue CLI 3结合Lerna进行UI框架设计
2019/04/14 Javascript
vue 引用自定义ttf、otf、在线字体的方法
2019/05/09 Javascript
php结合js实现多条件组合查询
2019/05/28 Javascript
JS随机密码生成算法
2019/09/23 Javascript
koa2 数据api中间件设计模型的实现方法
2020/07/13 Javascript
Python是编译运行的验证方法
2015/01/30 Python
python实现单链表中删除倒数第K个节点的方法
2018/09/28 Python
Python Flask框架模板操作实例分析
2019/05/03 Python
Python字符串、列表、元组、字典、集合的补充实例详解
2019/12/20 Python
解决django FileFIELD的编码问题
2020/03/30 Python
Python新手学习装饰器
2020/06/04 Python
python实现代码审查自动回复消息
2021/02/01 Python
测量工程专业求职信
2014/02/24 职场文书
教师学习八项规定六项禁令思想汇报
2014/09/27 职场文书
目标责任书格式范文
2015/05/11 职场文书
肖申克救赎观后感
2015/06/02 职场文书
2015年教师节主持词
2015/07/03 职场文书
SQL 窗口函数实现高效分页查询的案例分析
2021/05/21 SQL Server
python生成可执行exe控制Microsip自动填写号码并拨打功能
2021/06/21 Python