各jQuery选择器的用法(转)
这篇文章来介绍下jQuery的选择器。
选择器是jQuery的根基,在jQuery中,对事件处理、遍历DOM和Ajax操作都依 赖于选择器。因此,如果能熟练的使用选择器,不仅能简化代码,而且可以达到事半功倍的效果。jQuery选择器完全继承了CSS的风格。利用jQuery 选择器,可以非常便捷的找出特定的DOM元素,然后为它们添加相应的行为,而无需担心浏览器是否支持这一选择器。
jQuery选择器可简单分为基本选择器、层次选择器、过滤选择器、表单选择器。下面通过表格进行一一介绍。
1.基本选择器
| 选择器 | 描 述 | 返 回 | 示 例 |
|---|---|---|---|
| $("#id") | 匹配给定的id | 单个元素 | $(“header”) |
| $(".class") | 匹配给定的类名 | 集合元素 | $(“.test”) |
| $("E") | 匹配给定的标签名 | 集合元素 | $(“div”) |
| $("*") | 匹配所有元素 | 集合元素 | $(“*’) |
| $("E1, .class, E2,…") |
并集,等价于$(“E1”) U $(“.class”) U $(“E2”) U …… |
集合元素 |
$(“span, .tips”) |
|
$("E.class")(只能 是标签名.类名形式) |
交集,等价于$(“E1”) ∩ $(“.class”)。注意它和 层次选择器$("E .class")的区别,层次选择器要用 空格分开,$("E .class")是在$("E")的后代中查找, 而$(“E.class”)只在$(“E”)元素中查找,不是在其 后代中查找 |
集合元素 |
$(“div.test”) |
2.层次选择器
| 选择器 | 描 述 | 返 回 | 示 例 |
|---|---|---|---|
|
$(“ancestor descendant1 descendant2 ……”) |
add by zhj 1、查找满足ancestor条件的元素集,假设元素集为A1 2、从A1的所有后代中查找满足descendant1条件的元素集A2 3、从A2的所有后代中查找满足descendant2条件的元素集A3 4、…… 上面所说的后代即子代+孙代+…… 等价于$("ancestor").find("descendant1").find("descendant2").find("……") 可能有人会问,既然是从所有后代中查找,那 $(“ancestor descendant1 descendant2 …… descendantN”)是否等价于 $(“ancestor descendantN”),当然不是,如下。 $(“#go .hi .my”)是蓝色背景的标签,而$("#go my")是蓝色和红色背景的标签 <div id = "go"> <div class = "hi"> <div class = "my"> </div> </div> <div class = "my"> </div> </div> 其实最常用的还是两次查找的形式,即$(“ancestor descendant1"),多次查找用的场合并不多。 |
集合元素 |
$(“body div”) $("div .test"); $("div .test .mytest") |
| $(“parent>child”) | 匹配parent下的所有 child(子)元素 |
集合元素 | $(“div>span”) |
| $(“prev+next”) | 匹配紧接在prev后的 next元素 |
集合元素 | $(“.error+span”) |
| $(“prev~siblings”) | 匹配prev后的所有 siblings元素 |
集合元素 | $(“span~a”) |
3.过滤选择器
3.1 基本过滤选择器
| 选择器 | 描 述 | 返 回 | 示 例 |
|---|---|---|---|
| :first | 匹配第一个元素 | 单个元素 | $(“div:first”) |
| :last | 匹配最后一个元素 | 单个元素 | $(“span:last”) |
| :even | 匹配索引是偶数的元素 索引从0开始 |
集合元素 | $(“li:even”) |
| : odd | 匹配索引是奇数的元素 索引从0开始 |
集合元素 | $(“li:odd”) |
| :eq(index) | 匹配索引等于index的元 素(索引从0开始) |
单个元素 | $(“input:eq(2)”) |
| :gt(index) | 匹配索引大于index的元 素(索引从0开始) |
集合元素 | $(“input:gt(1)”) |
| :lt(index) | 匹配索引小于index的元 素(索引从0开始) |
集合元素 | $(“input:lt(5)”) |
| :header | 匹配所有h1,h2…等 标题元素 |
集合元素 | $(“:header”) |
| :animated | 匹配所有正在执行 动画的元素 |
集合元素 | $(“div:animated”) |
3.2 内容过滤选择器
| 选择器 | 描 述 | 返 回 | 示 例 |
|---|---|---|---|
| :contains(text) | 匹配含有文本内容text 的元素 |
集合元素 | $(“p:contains(今天)”) |
| :empty | 匹配不含子元素或 文本元素的空元素 |
集合元素 | $(“p:empty”) |
| :has(selector) | 匹配包含selector元素 的元素 |
集合元素 | $(“div:has(span)”) |
| :parent | 匹配含有子元素或文本 的元素 |
集合元素 | $(“div:parent”) |
3.3 可见性过滤选择器
| 选择器 | 描 述 | 返 回 | 示 例 |
|---|---|---|---|
| :hidden | 匹配所有不可见 的元素 |
集合元素 | $(“:hidden”) |
| :visible | 匹配所有可见元素 | 集合元素 | $(“:visible”) |
3.4 属性过滤选择器
| 选择器 | 描 述 | 返 回 | 示 例 |
|---|---|---|---|
| [attr] | 匹配拥有此属性 的元素 |
集合元素 | $(“img[alt]“) |
| [attr=value] | 匹配属性值为value 的元素 |
集合元素 | $(“a[title=test]“) |
| [attr!=value] | 匹配属性值不等于 value的元素 |
集合元素 | $(“a[title!=test]“) |
| [attr^=value] | 匹配属性值以value 开头的元素 |
集合元素 | $(“img[alt^=welcome]“) |
| [attr$=value] | 匹配属性值以value 结尾的元素 |
集合元素 | $(“img[alt$=last]“) |
| [attr*=vlaue] | 匹配属性值中含有 value的元素 |
集合元素 | $(“div[title*=test]“) |
| [attr1][attr2]… | 通过多个属性 进行匹配 |
集合元素 | $(“div[id][title*=test]“) |
3.5 子元素过滤选择器
| 选择器 | 描 述 | 返 回 | 示 例 |
|---|---|---|---|
| :nth-child | 匹配每个父元素下的 第index个子元素 索引从1开始 |
集合元素 | $(“div:nth-child(2)”) |
| :first-child | 匹配每个父元素的 第一个子元素 |
集合元素 | $(“div:first-child”) |
| :last-child | 匹配每个父元素的 最后一个子元素 |
集合元素 | $(“div:last-child”) |
| : only-child | 某元素是它父元素中 的唯一的子元素 则匹配它 |
集合元素 | $(“div:only-child”) |
3.6 表单对象属性过滤选择器
| 选择器 | 描 述 | 返 回 | 示 例 |
|---|---|---|---|
| :enabled | 匹配所有可用元素 | 集合元素 | $(“form :enabled”) |
| :disabled | 匹配所有不可用 的元素 |
集合元素 | $(“form :disabled”) |
| :checked | 匹配所有被选中的元素 (含单选框,复选框) |
集合元素 | $(“input:checked”) |
| :selected | 匹配所有被选中的 选项元素 |
集合元素 | $(“select :selected”) |
4.表单选择器
| 选择器 | 描 述 | 返 回 | 示 例 |
|---|---|---|---|
| :input | 匹配所有input, textarea, select, button元素 |
集合元素 | $(“input”) |
| :text | 匹配所有文本框 | 集合元素 | $(“:text”) |
| :password | 匹配所有密码框 | 集合元素 | $(“:password”) |
| :radio | 匹配所有单选框 | 集合元素 | $(“:radio”) |
| :checkbox | 匹配所有所有多选框 | 集合元素 | $(“:checkbox”) |
| :submit | 匹配所有提交按钮 | 集合元素 | $(“:submit”) |
| :image | 匹配所有图像按钮 | 集合元素 | $(“:image”) |
| :reset | 匹配所有重置按钮 | 集合元素 | $(“:reset”) |
| :button | 匹配所有按钮 | 集合元素 | $(“:button”) |
| :file | 匹配所有上传域 | 集合元素 | $(“:file”) |
各jQuery选择器的用法(转)的更多相关文章
- 分针网——每日分享: jquery选择器的用法
jQuery选择器是jQuery库的一大特色,用这些选择器不但可以省去繁琐的JavaScript 书写方式,还可以节省时间和效率,正是有这些jQuery选择器,才让我们更容易的操作JavaScript ...
- 分针网—IT教育: jquery选择器的用法
jQuery选择器是jQuery库的一大特色,用这些选择器不但可以省去繁琐的JavaScript 书写方式,还可以节省时间和效率,正是有这些jQuery选择器,才让我们更容易的操作JavaScript ...
- Jquery 选择器的用法
用js 动态生成<ul>标签的<li>条目,因为在动态的创建过程中li的点击事件是不太方便的,因此采用JQuery 的类选择器来实现. html代码: <div id=& ...
- jquery 选择器(name,属性,元素)大全
jQuery 选择器大体上可分为:基本选择器.层次选择器.过滤选择器.表单选择器. 其中过滤选择器可以分为:简单过滤选择器.内容过滤选择器.可见性过滤选择器.属性过滤选择器.子元素过滤选择器.表单对象 ...
- jquery选择器用法笔记(第一部分)
由于我在项目中用jquery比较多,而且觉得jquery真的很不错,尤其是其灵活高效的选择器更是令人无法忘怀.那么,今天就来写一篇非常基础的关于jquery选择器的文章,路过的朋友可以收藏以作参考. ...
- jquery选择器用法笔记(第二部分)
今天继续讲讲jquery选择器的更多用法,希望能给大家带来帮助. 9.$("ul li:eq(3)") -- 列表中的第四个元素(index 从 0 开始) :eq() 选择器 ...
- jquery选择器用法
jquery的基础选择器 选择器的用法其实跟咱们当时讲css的选择器用法类似,只是代码书写的不同 <ul> <li id="brother" class=&quo ...
- jquery选择器使用说明
在jquery中选择器是一个非常重要的东西,几乎做什么都离不开它,下面我总结了jquery几种选择器的用法.以方便后面直接可以用到!! 层次选择器: 1.find()://找到该元素的子元素以及孙子元 ...
- 精通jQuery选择器
虽然jQuery上手简单,相比于其他库学习起来较为简单,但是要全面掌握,却不轻松.因为它涉及到网页开发的方方面面,提供的方法和内部变化有上千种之多.初学者常常感到,入门很方便,提高很困难.本文的目标是 ...
随机推荐
- python学习(26)分析ajax请求抓取今日头条cosplay小姐姐图片
分析ajax请求格式,模拟发送http请求,从而获取网页代码,进而分析取出需要的数据和图片.这里分析ajax请求,获取cosplay美女图片. 登陆今日头条,点击搜索,输入cosplay 下面查看浏览 ...
- Hadoop生态圈-Flume的主流source源配置
Hadoop生态圈-Flume的主流source源配置 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 本篇博客只是配置的是Flume主流的Source,想要了解更详细的配置信息请参 ...
- Redis记录-redis和memcached的区别
1.Redis和Memcache都是将数据存放在内存中,都是内存数据库.不过memcache还可用于缓存其他东西,例如图片.视频等等: 2.Redis不仅仅支持简单的k/v类型的数据,同时还提供lis ...
- Codeforces #55D-Beautiful numbers (数位dp)
D. Beautiful numbers time limit per test 4 seconds memory limit per test 256 megabytes input standar ...
- bzoj千题计划205:bzoj1966: [Ahoi2005]VIRUS 病毒检测
http://www.lydsy.com/JudgeOnline/problem.php?id=1966 f[i][j] 表示s的前i个和t的前j个是否匹配 转移看代码 注意初始化: f[0][0]= ...
- HDU 3511 圆扫描线
找最深的圆,输出层数 类似POJ 2932的做法 圆扫描线即可.这里要记录各个圆的层数,所以多加一个维护编号的就行了. /** @Date : 2017-10-18 18:16:52 * @FileN ...
- java Runnable、Callable、FutureTask 和线程池
一:Runnable.Callable.FutureTask简介 (1)Runnable:其中的run()方法没有返回值. ①.Runnable对象可以直接扔给Thread创建线程实例,并且创建的线程 ...
- MySQL-视图View
视图:一个非真实存在的,囊括复杂查询在内的表,也可以理解成,视图就是一个查询之后的结果. 补充一个概念:临时表查询(子查询):就是在查询语句中再次嵌套一个查询,并将嵌套中的查询设定别名 SELECT ...
- 洛谷 P4389: 付公主的背包
题目传送门:洛谷 P4389. 题意简述: 有 \(n\) 个物品,每个物品都有无限多,第 \(i\) 个物品的体积为 \(v_i\)(\(v_i\le m\)). 问用这些物品恰好装满容量为 \(i ...
- USB-HID鼠标、键盘通讯格式【转】
转自:https://blog.csdn.net/techhome803/article/details/9928873 转自:http://www.amobbs.com/forum.php?mod= ...