你都掌握了吗?jQuery 选择器大全
在 Dom 编程中我们只能使用有限的函数根据 id 或者 TagName 获取 Dom 对象. 然而在 jQuery 中则完全不同,jQuery 提供了异常强大的选择器用来帮助我们获取页面上的对象, 并且将对象以 jQuery 包装集的形式返回。本文主要对常用的 jQuery 选择器进行一个介绍及归类。
jQuery 选择器大体上可分为 4 类:基本选择器、层次选择器、过滤选择器、表单选择器。 其中过滤选择器可以分为:简单过滤选择器、内容过滤选择器、可见性过滤选择器、属性过滤选择器、子元素过滤选择器、表单对象属性过滤选择器。
基本选择器:
- $("#myELement") 选择id值等于myElement的元素,id值不能重复在文档中只能有一个id值是myElement所以得到的是唯一的元素
- $("div") 选择所有的div标签元素,返回div元素数组
- $(".myClass") 选择使用myClass类的css的所有元素
- $("*") 选择文档中的所有的元素
- 可以运用多种的选择方式进行联合选择:例如$("#myELement,div,.myclass")
层叠选择器:
- $("form input") 选择所有的form元素中的input元素
- $("#main > *") 选择id值为main的所有的子元素
- $("label + input") 选择所有的label元素的下一个input元素节点
- 经测试选择器返回的是label标签后面直接跟一个input标签的所有input标签元素
- $("#prev ~ div") 同胞选择器
- 该选择器返回的为id为prev的标签元素的所有的属于同一个父元素的div标签
基本过滤选择器:
- $("tr:first") 选择所有tr元素的第一个
- $("tr:last") 选择所有tr元素的最后一个
- $("input:not(:checked) + span")
- 过滤掉:checked的选择器的所有的input元素
- $("tr:even") 选择所有的tr元素的第0,2,4... ...个元素(注意:因为所选择的多个元素时为数组,所以序号是从0开始)
- $("tr:odd") 选择所有的tr元素的第1,3,5... ...个元素
- $("td:eq(2)") 选择所有的td元素中序号为2的那个td元素
- $("td:gt(4)") 选择td元素中序号大于4的所有td元素
- $("td:ll(4)") 选择td元素中序号小于4的所有的td元素
- $(":header")
- $("div:animated")
内容过滤选择器:
- $("div:contains('John')") 选择所有div中含有John文本的元素
- $("td:empty") 选择所有的为空(也不包括文本节点)的td元素的数组
- $("div:has(p)") 选择所有含有p标签的div元素
- $("td:parent") 选择所有的以td为父节点的元素数组
可视化过滤选择器:
- $("div:hidden") 选择所有的被hidden的div元素
- $("div:visible") 选择所有的可视化的div元素
属性过滤选择器:
- $("div[id]") 选择所有含有id属性的div元素
- $("input[name='newsletter']") 选择所有的name属性等于'newsletter'的input元素
- $("input[name!='newsletter']") 选择所有的name属性不等于'newsletter'的input元素
- $("input[name^='news']") 选择所有的name属性以'news'开头的input元素
- $("input[name$='news']") 选择所有的name属性以'news'结尾的input元素
- $("input[name*='man']") 选择所有的name属性包含'news'的input元素
- $("input[id][name$='man']") 可以使用多个属性进行联合选择,该选择器是得到所有的含有id属性并且那么属性以man结尾的元素
子元素过滤选择器:
- $("ul li:nth-child(2)"),$("ul li:nth-child(odd)"),$("ul li:nth-child(3n + 1)")
- $("div span:first-child") 返回所有的div元素的第一个子节点的数组
- $("div span:last-child") 返回所有的div元素的最后一个节点的数组
- $("div button:only-child") 返回所有的div中只有唯一一个子节点的所有子节点的数组
表单元素选择器:
- $(":input") 选择所有的表单输入元素,包括input, textarea, select 和 button
- $(":text") 选择所有的text input元素
- $(":password") 选择所有的password input元素
- $(":radio") 选择所有的radio input元素
- $(":checkbox") 选择所有的checkbox input元素
- $(":submit") 选择所有的submit input元素
- $(":image") 选择所有的image input元素
- $(":reset") 选择所有的reset input元素
- $(":button") 选择所有的button input元素
- $(":file") 选择所有的file input元素
- $(":hidden") 选择所有类型为hidden的input元素或表单的隐藏域
表单元素过滤选择器:
- $(":enabled") 选择所有的可操作的表单元素
- $(":disabled") 选择所有的不可操作的表单元素
- $(":checked") 选择所有的被checked的表单元素
- $("select option:selected") 选择所有的select 的子元素中被selected的元素
你都掌握了吗?jQuery 选择器大全的更多相关文章
- jQuery选择器大全(48个代码片段+21幅图演示)
选择器是jQuery最基础的东西,本文中列举的选择器基本上囊括了所有的jQuery选择器,也许各位通过这篇文章能够加深对jQuery选择器 的理解,它们本身用法就非常简单,我更希望的是它能够提升个人编 ...
- 转:jQuery选择器大全(48个代码片段+21幅图演示)
选择器是jQuery最基础的东西,本文中列举的选择器基本上囊括了所有的jQuery选择器,也许各位通过这篇文章能够加深对jQuery选择器的理解,它们本身用法就非常简单,我更希望的是它能够提升个人编写 ...
- JQuery选择器大全 前端面试送命题:面试题篇 对IOC和DI的通俗理解 c#中关于协变性和逆变性(又叫抗变)帮助理解
JQuery选择器大全 jQuery 的选择器可谓之强大无比,这里简单地总结一下常用的元素查找方法 $("#myELement") 选择id值等于myElement的元素 ...
- jquery 选择器大全
jquery 选择器大体上可分为4 类: 1.基本选择器 2.层次选择器 3.过滤选择器 4.表单选择器 其中过滤选择器可以分为: 1.简单过滤选择器 2.内容过滤选择器 3.可见性过滤选择器 4.属 ...
- jquery选择器大全参考
在Dom 编程中我们只能使用有限的函数根据id 或者TagName 获取Dom 对象. 然而在jQuery 中则完全不同,jQuery 提供了异常强大的选择器用来帮助我们获取页面上的对象, 并且将对象 ...
- Jquery选择器大全、属性操作、css操作、文档、事件等
一.简介 定义 jQuery创始人是美国John Resig,是优秀的Javascript框架: jQuery是一个轻量级.快速简洁的javaScript库. jQuery对象 jQuery产 ...
- jQuery 选择器大全总结
jQuery基础语法中规定的选择器有三种,分别是类选择器.ID选择器.标签选择器.如:$(“.aa”).$(“#id”).$(“div”),但中实际的应用中,DOM机构非常复杂,层级非常多.如和应对这 ...
- jQuery选择器大全整理
一.选择网页元素 $(document) //选择整个文档对象 $('#myId') //选择ID为myId的网页元素 $('div.myClass') // 选择class为myClass的div元 ...
- Jquery选择器大全汇总
一.选择器 1.三个基本选择器,$("#ID") .$(".className") .$("tagName") 2.其他选择器 //htm ...
随机推荐
- vue.js 中slot 用处大(转载)
什么是组件? 组件(Component)是 Vue.js 最强大的功能之一.组件可以扩展 HTML 元素,封装可重用的代码.在较高层面上,组件是自定义元素,Vue.js 的编译器为它添加特殊功能.在有 ...
- asp.net简述WP开发模式
详情请参考菜鸟教程:http://www.runoob.com/aspnet/aspnet-tutorial.html 1.ASP.NET 是一个使用 HTML.CSS.JavaScript 和服务器 ...
- 如何提高cxgrid的刷新速度
如果View的类型是cxGridDBTableView: 1.cxGrid.DisableControls;cxGrid.EnableControls; 如仍觉得慢,可以把 cxGrid1DBTabl ...
- [转帖] .net 2.1 是 LTS长期支持版本.
[翻译] .NET Core 2.1 发布 原文: Announcing .NET Core 2.1 我们很高兴可以发布 .NET Core 2.1.这次更新包括对性能的改进,对运行时和工具的改进 ...
- sublimeText3的一些操作记录
# 给绿色版的sublimeText3添加右键菜单,其中@=“Sublime Text 3” 是右键展示的文字, 后面的icon是图标将下面代码保存为.reg文件执行 Windows Registry ...
- iframe & cors
iframe & cors <!DOCTYPE html> <html lang="zh-Hans"> <head> <meta ...
- HDU 6166 Senior Pan(二进制分组+最短路)
题意 给出一个\(n\)个点\(m\)条边的有向图\((n,m<=100000)\),从中选择\(k\)个点\((k<=n)\),问这k个点两两之间的最短路最小值是多少? 思路 直接的想法 ...
- [BZOJ1559]密码 AC自动机+状压
问题 K: [JSOI2009]密码 时间限制: 1 Sec 内存限制: 64 MB 题目描述 众所周知,密码在信息领域起到了不可估量的作用.对于普通的登陆口令,唯一的破解 方法就是暴力破解一逐个尝 ...
- Java EE之JSP
1.使用JSP的原因 编写Servlet代码的时候,向响应中输出HTML文档是非常不方便的. PrintWriter writer = response.getWriter(); writer.app ...
- Android Studio之BuildConfig类
https://blog.csdn.net/lvxiangan/article/details/71601451 Android Studio开发中,把一个module输出打包为jar文件,我们会发现 ...