jQuery学习笔记 获取jQuery对象


Posted in Javascript onSeptember 19, 2012

使用jQuery选择器选择页面元素,目的是为了生成jQuery对象,语法相当简单:$(selector)。但值得注意的是,这是生成jQuery对象,不是DOM对象,因此$(selector).innerHTML以获取元素内部HTML代码是错误的,正确写法是$(selector).html()。同样的,判断一个DOM对象是否存在,不能够写成if($(selector)),而是if($(selector).length>0)。

当然jQuery对象和DOM对象可以互转换。从上面的例子也可以看出,jQuery对象可以视为是一个DOM对象数组,因此转换成DOM对象可使用get(index)方法或者[index]取下标;相反,DOM对象转换为jQuery对象只需直接用$(document.getElementById(“id”))包装一下就行了。

虽然取对象的方法很简单$(selector),但是这个参数selector却是种类繁多。这里扼要说明一下:

过滤选择器:附在所有选择器的后面,通过特定的过滤规则来筛选出一部分元素,如$(selector:first)。若单独使用,$(:first)则等价于$(*:first);

层次选择器:通过DOM元素间层次关系来获取特定元素,由两个选择器组合而成。选择过程为先按照第一个选择器选择元素,然后根据符号确定后代元素或子元素或兄弟元素,最后在这些元素范围内按照第二个选择器选取最后想要的元素;

下面就是各种选择器的表格说明- -这就打了我一上午,真蛋疼!

 

基本选择器

选择器 描述 返回
* 选取所有元素 集合元素
element 根据标签名选取元素 集合元素
#id 根据id属性值选取元素 单个元素
.class 根据class属性值选取元素 集合元素
selector1,selector2,…,selectorN 将每个选择器选取的元素合并在一个结果,主要用于选取不同元素 集合元素

 

基本过滤选择器

选择器 描述 返回
:first 选取第一个元素 单个元素
:last 选取最后一个元素 单个元素
:even 选取索引值是偶数的所有元素,索引从0开始 集合元素
:odd 选取索引值是奇数的所有元素,索引从0开始 集合元素
:eq(index) 选取索引值等于index的元素,index从0开始 单个元素
:gt(index) 选取索引值大于index的元素,index从0开始 集合元素
:lt(index) 选取索引值小于index的元素,index从0开始 集合元素
:not(selector) 选取匹配selector以外的元素 集合元素
:header 选取所有的标题元素 集合元素
:animated 选取当前正在执行动画的所有元素 集合元素

 

子元素过滤选择器

选择器 描述 返回
:first-child 选取每个父元素的第一个子元素 集合元素
:last-child 选取每个父元素的最后一个子元素 集合元素
:only-child 如果某元素是父元素唯一的子元素,则将被选取 集合元素
:nth-child(odd) 选取每个父元素下索引值是奇数的子元素 集合元素
:nth-child(even) 选取每个父元素下索引值是偶数的子元素 集合元素
:nth-child(index) 选取每个父元素下索引值等于index的子元素 集合元素
:nth-child(equation) 选取每个父元素下索引值匹配equation的子元素 集合元素

 

内容过滤选择器

选择器 描述 返回
:contains(text) 选取文本内容为text的元素 集合元素
:has(selector) 选取含有后代元素为selector的元素 集合元素
:parent 选取含有后代元素或文本的元素 集合元素
:empty 选取不包含后代元素或文本的空元素 集合元素

 

可见性过滤选择器

选择器 描述 返回
:hidden 选取所有不可见的元素 集合元素
:visible 选取所有可见的元素 集合元素

 

属性过滤选择器

选择器 描述 返回
[attr] 选取拥有attr属性的元素 集合元素
[attr=value] 选取attr属性值为value的元素 集合元素
[attr!=value] 选取attr属性值不为value的元素 集合元素
[attr^=value] 选取attr属性值以value开始的元素 集合元素
[attr$=value] 选取attr属性值以value结束的元素 集合元素
[attr*=value] 选取attr属性值含有value的元素 集合元素
[attr~=value] 选取attr属性值用空格分隔的值中有一个为value的元素 集合元素
[selector1][selector2]…[selectorN] 选取满足所有属性过滤选择器的元素 集合元素

 

层次选择器

选择器 描述 返回
selector1 selector2 从selector1的后代元素里选取selector2 集合元素
selector1>selector2 从selector1的子元素里选取selector2 集合元素
Selector1+selector2 从selector1后面的第一个兄弟元素里选取selector2 集合元素
selector1~selector2 从selector1后面的所有兄弟元素里选取selector2 集合元素

 

表单选择器

选择器 描述 返回
:input 选取 集合元素
:text 选取符合[type=text]的元素 集合元素
:password 选取符合[type=password]的元素 集合元素
:radio 选取符合[type=radio]的元素 集合元素
:checkbox 选取符合[type=checkbox]的元素 集合元素
:image 选取符合[type=image]的元素 集合元素
:file 选取符合[type=file]的元素 集合元素
:button 选取符合[type=button]的 集合元素
:submit 选取符合[type=submit]的 集合元素
:reset 选取符合[type=reset]的 集合元素
:hidden 选取所有不可见的元素 集合元素

 

表单过滤选择器

选择器 描述 返回
:enable 选取所有可用表单元素 集合元素
:disable 选取所有不可用表单元素 集合元素
:checked 选取被选中的元素(单选框、复选框) 集合元素
:selected 选取被选中的 集合元素
Javascript 相关文章推荐
javascript 动态生成私有变量访问器
Dec 06 Javascript
什么是json和jsonp,jQuery json实例详详细说明
Dec 11 Javascript
document.createElement()用法及注意事项(ff下不兼容)
Mar 13 Javascript
JavaScript DOM进阶方法
Apr 13 Javascript
Bootstrap富文本组件wysiwyg数据保存到mysql的方法
May 09 Javascript
vue.js学习笔记:如何加载本地json文件
Jan 17 Javascript
Linux使用Node.js建立访问静态网页的服务实例详解
Mar 21 Javascript
jQuery插件jsonview展示json数据
May 26 jQuery
实例介绍JavaScript中多种组合继承
Jan 20 Javascript
vue-week-picker实现支持按周切换的日历
Jun 26 Javascript
jQuery 筛选器简单操作示例
Oct 02 jQuery
详解CocosCreator项目结构机制
Apr 14 Javascript
jQuery学习笔记 更改jQuery对象
Sep 19 #Javascript
jQuery学习笔记 操作jQuery对象 文档处理
Sep 19 #Javascript
jQuery学习笔记 操作jQuery对象 属性处理
Sep 19 #Javascript
jQuery学习笔记 操作jQuery对象 CSS处理
Sep 19 #Javascript
firefox下jQuery UI Autocomplete 1.8.*中文输入修正方法
Sep 19 #Javascript
dotopAlert 提示用户需安装播放器的代码
Sep 17 #Javascript
点弹代码 点击页面任何位置都可以弹出页面效果代码
Sep 17 #Javascript
You might like
上海地方志办公室-上海电子仪表工业志
2021/03/04 无线电
腾讯QQ微博API接口获取微博内容
2013/10/30 PHP
浅谈php中fopen不能创建中文文件名文件的问题
2017/02/06 PHP
PHP 实现页面静态化的几种方法
2017/07/23 PHP
PHP大文件切割上传功能实例分析
2019/07/01 PHP
js列举css中所有图标的实现代码
2011/07/04 Javascript
js通过元素class名字获取元素集合的具体实现
2014/01/06 Javascript
js使用for循环及if语句判断多个一样的name
2014/09/09 Javascript
easyui Draggable组件实现拖动效果
2015/08/19 Javascript
Vue响应式添加、修改数组和对象的值
2017/03/20 Javascript
JavaScript实现前端分页控件
2017/04/19 Javascript
webpack+vue中使用别名路径引用静态图片地址
2017/11/20 Javascript
switchery按钮的使用方法
2017/12/18 Javascript
JS中FormData类实现文件上传
2020/03/27 Javascript
浅谈JavaScript中的“!!”作用
2020/08/03 Javascript
vue实现移动端返回顶部
2020/10/12 Javascript
vue下载二进制流图片操作
2020/10/26 Javascript
vue添加自定义右键菜单的完整实例
2020/12/08 Vue.js
vue3 watch和watchEffect的使用以及有哪些区别
2021/01/26 Vue.js
Python中实现远程调用(RPC、RMI)简单例子
2014/04/28 Python
Python socket.error: [Errno 98] Address already in use的原因和解决方法
2014/08/25 Python
python简单的函数定义和用法实例
2015/05/07 Python
python写入xml文件的方法
2015/05/08 Python
Python实现简单遗传算法(SGA)
2018/01/29 Python
对python字典过滤条件的实例详解
2019/01/22 Python
Django ORM多对多查询方法(自定义第三张表&ManyToManyField)
2019/08/09 Python
python Dijkstra算法实现最短路径问题的方法
2019/09/19 Python
使用python切片实现二维数组复制示例
2019/11/26 Python
英国最大的百货公司:Harrods
2016/08/18 全球购物
《猴子种树》教学反思
2014/02/14 职场文书
投资意向书范本
2014/04/01 职场文书
小学竞选班长演讲稿
2014/09/09 职场文书
婚庆公司计划书
2014/09/15 职场文书
2014年市场部工作总结
2014/11/25 职场文书
在校证明模板
2015/06/17 职场文书
Python离线安装openpyxl模块的步骤
2021/03/30 Python