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 相关文章推荐
有道JavaScript监听浏览器的问题
Jun 23 Javascript
这些年、我收集的JQuery代码小结
Aug 01 Javascript
JS获取后台Cookies值的小例子
Mar 04 Javascript
事件冒泡是什么如何用jquery阻止事件冒泡
Mar 20 Javascript
css配合jquery美化 select
Nov 29 Javascript
Javascript遍历Html Table示例(包括内容和属性值)
Jul 08 Javascript
用vue快速开发app的脚手架工具
Jun 11 Javascript
Javascript 之封装(Package)
Sep 14 Javascript
vue实现百度搜索功能
Dec 28 Javascript
vue 路由守卫(导航守卫)及其具体使用
Feb 25 Javascript
Vue中keep-alive组件的深入理解
Aug 23 Javascript
JavaScript 绘制饼图的示例
Feb 19 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
用PHP调用数据库的存贮过程
2006/10/09 PHP
图形数字验证代码
2006/10/09 PHP
一个分页的论坛
2006/10/09 PHP
php5.3 注意事项说明
2013/07/01 PHP
php将12小时制转换成24小时制的方法
2015/03/31 PHP
PHP结合jQuery插件ajaxFileUpload实现异步上传文件实例
2020/08/17 PHP
文字不间断滚动(上下左右)实例代码
2013/04/21 Javascript
JavaScript instanceof 的使用方法示例介绍
2013/10/23 Javascript
浅谈 jQuery 事件源码定位问题
2014/06/18 Javascript
JavaScript利用append添加元素报错的解决方法
2014/07/01 Javascript
jquery实现在网页指定区域显示自定义右键菜单效果
2015/08/25 Javascript
实例代码讲解jquery easyui动态tab页
2015/11/17 Javascript
又一枚精彩的弹幕效果jQuery实现
2016/07/25 Javascript
jQuery获取select选中的option的value值实现方法
2016/08/29 Javascript
Bootstrap DateTime Picker日历控件简单应用
2017/03/25 Javascript
Angularjs+bootstrap+table多选(全选)支持单击行选中实现编辑、删除功能
2017/03/27 Javascript
ionic中的$ionicPlatform.ready事件中的通用设置
2017/06/11 Javascript
vue2.x select2 指令封装详解
2017/10/12 Javascript
Angular4的输入属性与输出属性实例详解
2017/11/29 Javascript
基于React Native 0.52实现轮播图效果
2020/08/25 Javascript
vue新建项目并配置标准路由过程解析
2019/12/09 Javascript
Python修改Excel数据的实例代码
2013/11/01 Python
Python生成短uuid的方法实例详解
2018/05/29 Python
Django Celery异步任务队列的实现
2019/07/24 Python
Python日志logging模块功能与用法详解
2020/04/09 Python
python else语句在循环中的运用详解
2020/07/06 Python
Pyecharts 中Geo函数常用参数的用法说明
2021/02/01 Python
Python抖音快手代码舞(字符舞)的实现方法
2021/02/07 Python
用CSS3的box-reflect来制作倒影效果
2016/11/15 HTML / CSS
AmazeUI在模态框中嵌入表单形成模态输入框
2020/08/20 HTML / CSS
儿媳婚宴答谢词
2014/01/14 职场文书
捐赠仪式主持词
2014/03/19 职场文书
医院信息公开实施方案
2014/05/09 职场文书
领导班子对照检查材料
2014/09/22 职场文书
特别篇动画《总之就是非常可爱 ~制服~》PV公开,2022年夏季播出
2022/04/04 日漫
win10频率超出范围怎么办?win10老显示超出工作频率范围的解决方法
2022/07/07 数码科技