jquery 中多条件选择器,相对选择器,层次选择器的区别


Posted in Javascript onJuly 03, 2012

一、Jquery常用的过滤选择器如下所示:

1、:first,选取第一个元素,比如$("div:first")选取第一个div元素

2、:last,选取最后一个元素,比如$("div:last")选取最后一个div元素

3、:not(选择器),选取不满足“选择器”条件的元素,比如$("div:not(.className)"),选取样式不是className的所有div元素

4、:even/:odd,选取索引为偶数/奇数的元素,比如$("div:even"),选取索引号为偶数的所有div元素

5、:eq(索引序号)/:gt(索引序号)/:lt(索引序号),选取等于索引号/大于索引号/小于索引号的元素,比如$("div:lt(3)"),选取索引号小于3的所有div元素

注意:

过滤选择器的混合使用时要记住后面的过滤条件是以前面的过滤选择器过滤后的重新序号为基础,即过滤的逐级性,比如

$("#t1 tr:gt(0):lt(3)").css("fontSize", "28"); //lt(3)是从gt(0)出的新序列中的序号,不要写成lt(4)

二,重点

多条件选择器
多条件选择器:$("p,div,span,menuitem"),同时选择p标签,div标签,和拥有menuitem样式的span标签元素
注意选择器表达式中的空格不能多不能少,易错!

相对选择器

只要在$()指定第二个参数,第二个参数为相对的元素。比如html代码如下

<table id="table1"> 
<tr><td>dsds</td><td>dsfdef</td></tr> 
<tr><td>dsds</td><td>dsfdef</td></tr> 
<tr><td>dsds</td><td>dsfdef</td></tr> 
<tr><td>dsds</td><td>dsfdef</td></tr> 
<tr><td>dsds</td><td>dsfdef</td></tr> 
</table>

那么可以用如下的js代码操作td的背景色
$("td", $(this)).css("background", "red"),这句代码用的就是相对选择器,选择出的td是以当前的tr为相对的元素。选择的td元素是当前的tr元素下的所有td元素,没有涉及到其他行的td元素
<script type="text/javascript"> 
$(function () { 
$("#table1 tr").click(function () { 
$("td", $(this)).css("background", "red"); 
}); 
}); 
</script>

层次选择器:
1 $("#div li")获取div下的所有li元素(后代,子,子的子....)
2 $("#div > li")获取div下的直接li子元素//注意空格
3 $(".menuitem + div")获取样式名为menuitem之后的第一个div元素,不常用。
3 $(".menuitem ~ div")获取样式名为menuitem之后的所有的div元素,不常用。

细节区别在于(易错点):
多条件选择器:$("p,div,span,menuitem"),相对选择器:$("td", $(this)).css("background", "red")",层次选择器:$("#div li")获取div下的所有li元素(后代,子,子的子....)

三者的区别是:

多条件选择器:在一个“”内有逗号区分,

相对选择器:2个元素分开 ,

层次选择器在一个“”内以空格区分

Javascript 相关文章推荐
jQuery 使用手册(三)
Sep 23 Javascript
多浏览器兼容性比较好的复制到剪贴板的js代码
Oct 09 Javascript
在Javascript中 声明时用&quot;var&quot;与不用&quot;var&quot;的区别
Apr 15 Javascript
thinkphp 表名 大小写 窍门
Feb 01 Javascript
javascript操作ul中li的方法
May 14 Javascript
js实现漫天星星效果
Jan 19 Javascript
bootstrap模态框示例代码分享
May 17 Javascript
JavaScript中最常用的10种代码简写技巧总结
Jun 28 Javascript
解决VUEX刷新的时候出现数据消失
Jul 03 Javascript
利用node.js爬取指定排名网站的JS引用库详解
Jul 25 Javascript
electron中使用bootstrap的示例代码
Nov 06 Javascript
JS实现可切换图片的幻灯切换效果示例
May 24 Javascript
jquery 实现表单验证功能代码(简洁)
Jul 03 #Javascript
JavaScript中的细节分析
Jun 30 #Javascript
JavaScript中的作用域链和闭包
Jun 30 #Javascript
JavaScript中的面向对象介绍
Jun 30 #Javascript
js中判断数字\字母\中文的正则表达式 (实例)
Jun 29 #Javascript
JavaScript 学习笔记之一jQuery写法图片等比缩放以及预加载
Jun 28 #Javascript
Fixie.js 自动填充内容的插件
Jun 28 #Javascript
You might like
NT IIS下用ODBC连接数据库
2006/10/09 PHP
php和js如何通过json互相传递数据相关问题探讨
2013/02/26 PHP
PHP常用的缓存技术汇总
2014/05/05 PHP
Apache无法自动跳转却显示目录的解决方法
2020/11/30 PHP
PHP串行化与反串行化实例分析
2016/12/27 PHP
js调用AJAX时Get和post的乱码解决方法
2013/06/04 Javascript
JS通过相同的name进行表格求和代码
2013/08/18 Javascript
form表单只提交数据而不进行页面跳转的解决方案
2013/09/18 Javascript
获取非最后一列td值并将title设为该值的方法
2013/10/30 Javascript
jQuery中Dom的基本操作小结
2014/01/23 Javascript
JS实现屏蔽shift,Ctrl,alt等功能键的方法
2015/06/01 Javascript
jQuery插件HighCharts实现的2D堆条状图效果示例【附demo源码下载】
2017/03/14 Javascript
jQuery实现动画、消失、显现、渐出、渐入效果示例
2018/09/06 jQuery
koa2实现登录注册功能的示例代码
2018/12/03 Javascript
vue 解除鼠标的监听事件的方法
2019/11/13 Javascript
vue实现图片懒加载的方法分析
2020/02/05 Javascript
JavaScript arguments.callee作用及替换方案详解
2020/09/02 Javascript
[02:38]2018年度DOTA2最佳劣单位选手-完美盛典
2018/12/17 DOTA
python实现的一只从百度开始不断搜索的小爬虫
2013/08/13 Python
Python读取mp3中ID3信息的方法
2015/03/05 Python
TensorFlow实现随机训练和批量训练的方法
2018/04/28 Python
python写入并获取剪切板内容的实例
2018/05/31 Python
Python3匿名函数用法示例
2018/07/25 Python
Python读取excel指定列生成指定sql脚本的方法
2018/11/28 Python
教你如何编写、保存与运行Python程序的方法
2019/07/12 Python
基于TensorFlow常量、序列以及随机值生成实例
2020/01/04 Python
python next()和iter()函数原理解析
2020/02/07 Python
python+selenium+chrome实现淘宝购物车秒杀自动结算
2021/01/07 Python
俄罗斯鲜花递送:AMF
2020/04/24 全球购物
英语教育专业自荐信
2014/05/29 职场文书
2014领导班子四风问题对照检查材料思想汇报
2014/09/21 职场文书
工程承包协议书
2014/10/20 职场文书
2015年后勤工作总结范文
2015/04/08 职场文书
工程资料员岗位职责
2015/04/13 职场文书
毕业设计论文致谢词
2015/05/14 职场文书
六年级作文之预言作文
2019/10/25 职场文书