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 相关文章推荐
JAVASCRIPT 对象的创建与使用
Mar 09 Javascript
ASP中进行HTML数据及JS数据编码函数
Nov 11 Javascript
Dojo 学习要点
Sep 03 Javascript
JavaScript 设计模式 安全沙箱模式
Sep 24 Javascript
jquery zTree异步加载简单实例分享
Feb 05 Javascript
解决IE6的PNG透明JS插件使用介绍
Apr 17 Javascript
JavaScript实现的一个倒计时的类
Mar 12 Javascript
JavaScript function函数种类详解
Feb 22 Javascript
JSONP跨域请求
Mar 02 Javascript
vue的列表交错过渡实现代码示例
May 05 Javascript
解决Idea、WebStorm下使用Vue cli脚手架项目无法使用Webpack别名的问题
Oct 11 Javascript
JS加载解析Markdown文档过程详解
May 19 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
一个图形显示IP的PHP程序代码
2007/10/19 PHP
ThinkPHP视图查询详解
2014/06/30 PHP
js自带函数备忘 数组
2006/12/29 Javascript
JavaScript操作XML实例代码(获取新闻标题并分页,并分页)
2010/05/25 Javascript
JS清空多文本框、文本域示例代码
2014/02/24 Javascript
js实现感应鼠标图片透明度变化的方法
2015/02/20 Javascript
jQuery中trigger()与bind()用法分析
2015/12/18 Javascript
Jquery技巧(必须掌握)
2016/03/16 Javascript
自学实现angularjs依赖注入
2016/12/20 Javascript
JS简单判断函数是否存在的方法
2017/02/13 Javascript
jquery拼接ajax 的json和字符串拼接的方法
2017/03/11 Javascript
JavaScript实现购物车基本功能
2017/07/21 Javascript
基于JSON数据格式详解
2017/08/31 Javascript
Webpack框架核心概念(知识点整理)
2017/12/22 Javascript
Angular实现的简单查询天气预报功能示例
2017/12/27 Javascript
Python语言技巧之三元运算符使用介绍
2013/03/04 Python
netbeans7安装python插件的方法图解
2013/12/24 Python
用python写的一个wordpress的采集程序
2016/02/27 Python
利用Python抓取行政区划码的方法
2016/11/28 Python
Python使用剪切板的方法
2017/06/06 Python
Python延时操作实现方法示例
2018/08/14 Python
详解Python二维数组与三维数组切片的方法
2019/07/18 Python
django 2.2和mysql使用的常见问题
2019/07/18 Python
基于python操作ES实例详解
2019/11/16 Python
详解python中各种文件打开模式
2020/01/19 Python
python global和nonlocal用法解析
2020/02/03 Python
对tensorflow中cifar-10文档的Read操作详解
2020/02/10 Python
HTML5如何实现元素拖拽
2016/03/11 HTML / CSS
HTML5全屏(Fullscreen)API详细介绍
2015/04/24 HTML / CSS
意大利和国际最佳时尚品牌:Drestige
2019/12/28 全球购物
比较一下entity bean和session bean
2013/12/27 面试题
打造完美自荐信
2014/01/24 职场文书
安全生产月演讲稿
2014/05/09 职场文书
党员专题组织生活会发言材料
2014/10/17 职场文书
中学生社区服务活动报告
2015/02/05 职场文书
2019安全宣传标语大全
2019/08/14 职场文书