Jquery实战_读书笔记2 选择器


Posted in Javascript onJanuary 22, 2010

基本的CSS选择器
熟悉web开发的人员一定对css的选择功能相当的了解,通过css选择功能,我们可以在css样式文件里轻松的将样式应用到选择的页面元素上。jQuery也正是采用了这样的机制,使jQuery的元素选择能力易常强大。
a——选择所有<a>元素
#specialID——选择匹配id为specialID的元素
.specialClass——选择匹配拥有css类sepcialClass的元素
a#specialID.specialClass——选择匹配id为specialID、有用css类specialClass的<a>元素
p a.specialClass——匹配拥有css类specialClass、在<p>元素内的<a>元素
除了支持传统的css选择器,Jquery还支持CSS3选择功能。

 

子节点选择器
$("p > a") 选择元素<p> 的直接子节点的<a>元素,非直接子节点的<a>元素将不会被选择到

特性选择器
特性选择器在匹配的选择元素上过滤满足某特性(属性)的元素
如我们需要做如下的选择:匹配所有指向本网站之外地址的链接,我们可以这样选择
$("a[href^=http://")  该选择器选择具有href属性,且href属性值以http://开始的链接元素
特性选择的语法是:
选择具有某特性(属性)的元素
form[method]
选择具有某特性,且属性值为指定值的元素
input[type=text]
选择匹配特性以特定字符开头的元素
div[title^=my]  ——选择匹配title特性值已my开头的所有div元素
选择匹配特性以特定字符结束的元素
a[href$=.pdf] ——选择引用了pdf文件的所有链接元素
其他
a[href*=jquery.com]选择引用jQuery网站的所有链接元素

过滤符
通过过滤符选择器可以在已选择的元素中过滤出需要的元素,上面的特性选择器也属于过滤符,另外还有“:”字符
如:
li:has(a)—— 选择匹配包含<a>元素的所有<li>元素

1. 基础过滤符:
:first:匹配多个对象中的第一个对象
:last:匹配多个对象中的最后一个对象
:not(selector):匹配去除了not后面选择符中内容的项,not中的selector只能是过滤选择器,不能是查找选择器
:even:匹配所有对象中的第偶数个
:odd:匹配所有对象中的第奇数个
:eq(index):匹配某一下表的单独某元素
:gt(index):匹配大于某一下标的所有元素
:lt(index):匹配小于某一下标的所有元素
:header:匹配所有的header元素,例如h1,h2,h3,h4,h5,h6
:animated:匹配所有有动画效果的元素
2. 内容过滤符:
:contains(text):匹配内部拥有该文本元素的对象,包含间接有用的情况
:empty:匹配所有没有子元素的对象
:has(selector):匹配所有至少含有一个子选择符的对象
:parent:匹配元素,这些元素包含子元素(包括文本元素)
3. 可见性过滤符:
:hidden:匹配所有隐藏对象,或者input中的hidden类型
:visible:匹配所有可见的对象
4. 子过滤符:
:nth-child(index/even/odd/equation):匹配子元素中的某一下标/偶数/奇数/等式的对象,:eq(index)只能匹配某单一对象的子元素特征,而这个方法可以匹配多个对象的某一子元素共同特征  nth-child过滤器,从1开始计数,这主要是与css标准兼容。
:first-child:匹配第一个子元素
:last-child:匹配最后一个子元素
这两个匹配符也可以对多个父对象的所有子元素进行匹配操作
:only-child:如果一个父元素只有一个子元素,就匹配这个子元素
5. 表单过滤符
:input  :匹配表单内input元素
:text  :匹配表单内input type为text的元素
:password  :匹配表单内input type为password的元素
:radio  :匹配表单内input type为radio的元素
:checkbox  :匹配表单内input type为checkbox的元素
:submit  :匹配表单内input type为submit的元素
:image  :匹配表单内image的元素
:reset  :匹配表单内input type为reset的元素 
:button  :匹配表单内input type为button的元素
:file  :匹配表单内input type为file的元素.
:hidden  :匹配表单内input type为hidden的元素或者hidden区域
:enabled  :匹配所有启用元素
:disabled  :匹配所有非启用元素
:checked  :匹配所有选中元素
:selected  :匹配所有下拉列表选中元素

查找选择器和筛选选择器的概念区别
为了能灵活的使用jQuery,认清查找选择器、筛选选择器之间的区别是非常重要的。筛选选择器,通过对元素应用更高的选择标准(如过滤特性或或其他相关值),缩小正在匹配的元素的集合;查找选择器,比如后代选择器(空格)、子节点选择器(>)以及兄弟节点选择器(+)等,则查找与已选择元素具有某种关系的其他元素,而不是通过把标准应用于已匹配元素来限制匹配范围。

Javascript 相关文章推荐
JScript的条件编译
May 29 Javascript
Javascript 原型和继承(Prototypes and Inheritance)
Apr 01 Javascript
文本域光标操作的jQuery扩展分享
Mar 10 Javascript
jQuery中的each()详细介绍(推荐)
May 25 Javascript
一道优雅面试题分析js中fn()和return fn()的区别
Jul 05 Javascript
jQuery Validate让普通按钮触发表单验证的方法
Dec 15 Javascript
Canvas 绘制粒子动画背景
Feb 15 Javascript
从零学习node.js之详解异步控制工具async(八)
Feb 27 Javascript
jquery+css实现侧边导航栏效果
Jun 12 jQuery
微信小程序实现轮播图效果
Sep 07 Javascript
操作按钮悬浮固定在微信小程序底部的实现代码
Aug 02 Javascript
node.js 如何监视文件变化
Sep 01 Javascript
Jquery实战_读书笔记1—选择jQuery
Jan 22 #Javascript
jquery last-child 列表最后一项的样式
Jan 22 #Javascript
javascript 拖放效果实现代码
Jan 22 #Javascript
JAVASCRIPT style 中visibility和display之间的区别
Jan 22 #Javascript
javascript 获取url参数和script标签中获取url参数函数代码
Jan 22 #Javascript
JavaScript 学习笔记(十三)Dom创建表格
Jan 21 #Javascript
JavaScript 学习笔记(十二) dom
Jan 21 #Javascript
You might like
初探PHP5
2006/10/09 PHP
PHP实现分页的一个示例
2006/10/09 PHP
使用php 获取时间今天明天昨天时间戳的详解
2013/06/20 PHP
yii框架通过控制台命令创建定时任务示例
2014/04/30 PHP
destoon二次开发常用数据库操作
2014/06/21 PHP
服务器上配置PHP运行环境教程
2015/02/12 PHP
php 微信公众平台开发模式实现多客服的实例代码
2016/11/07 PHP
JS backgroundImage控制
2009/05/19 Javascript
javaScript 计算两个日期的天数相差(示例代码)
2013/12/27 Javascript
了不起的node.js读书笔记之node.js中的特性
2014/12/22 Javascript
javascript中slice(),splice(),split(),substring(),substr()使用方法
2015/03/13 Javascript
JavaScript实现仿网易通行证表单验证
2015/05/25 Javascript
微信公众平台开发教程(五)详解自定义菜单
2016/12/02 Javascript
解决vue-cli + webpack 新建项目出错的问题
2018/03/20 Javascript
vue异步axios获取的数据渲染到页面的方法
2018/08/09 Javascript
vue ssr 实现方式(学习笔记)
2019/01/18 Javascript
如何优雅的在一台vps(云主机)上面部署vue+mongodb+express项目
2019/01/20 Javascript
Weex开发之地图篇的具体使用
2019/10/16 Javascript
jQuery实现轮播图效果demo
2020/01/11 jQuery
Vue数据双向绑定原理实例解析
2020/05/15 Javascript
Python的pycurl包用法简介
2015/11/13 Python
Python通过DOM和SAX方式解析XML的应用实例分享
2015/11/16 Python
21行Python代码实现拼写检查器
2016/01/25 Python
解决python2.7 查询mysql时出现中文乱码
2016/10/09 Python
python使用thrift教程的方法示例
2019/03/21 Python
python机器学习实现决策树
2019/11/11 Python
python unichr函数知识点总结
2020/12/16 Python
HTML5未来发展趋势
2016/02/01 HTML / CSS
方法名是否可以与构造器的名字相同
2012/06/04 面试题
C#实现启动一个进程
2016/10/01 面试题
高中生第一学年自我鉴定2015
2014/09/28 职场文书
教师自我剖析材料
2014/09/29 职场文书
2014年体育教学工作总结
2014/12/09 职场文书
2014年信息宣传工作总结
2014/12/18 职场文书
技能培训通讯稿
2015/07/18 职场文书
TypeScript实用技巧 Nominal Typing名义类型详解
2022/09/23 Javascript