jQuery 选择器详解


Posted in Javascript onJanuary 19, 2015

$()函数在很多JavaScript类库中都被作为一个选择器函数来使用,在jQuery中就是.

$(“#id”)通过id来获取元素,用来代替document.getElementById()函数.

$(“tagName”)通过标签名来获取元素,用来代替document.getElementsByTagName()函数.

jQuery的基本语法是:$(selector).action(), selector即选择器.

jQuery选择器的分类

jQuery的选择器基本可以分为四大类:

基本选择器(basic)

层次选择器(level)

过滤选择器(filter)

表单选择器(form)

有些类别又可以分为具体的子类别.

基本选择器

jQuery 选择器详解

* 匹配所有元素.示例:$(“*")选取所有元素.

#id根据给定的id匹配元素(最多只返回一个元素).示例: $("#lastname”)选取id="lastname"的元素.

.class根据给定的类名匹配元素.示例:$(".intro”)选取所有class=“intro"的元素.

element根据给定的元素名匹配元素.示例: $(“p")选取所有<p>元素.

.class.class 示例: $(".intro.demo”)选取所有且class="demo”的元素.(交集).

selector1, selector2, …, selectorN, 将每一个选择器匹配到的元素合并后一起返回.(并集).

除了#id选择器返回单个元素外,其他选择器返回的都是元素集合.

这是因为HTML规范里面id应该是唯一的,所以重复id的元素没有被考虑.

如果多个元素的id相同,取这个id也只能获取第一个元素.即获取的jQuery对象的length属性是1.

如果要匹配的元素不存在,则都返回一个空的jQuery对象.

     基本选择器之间可以组合,用逗号分隔,结果取所有条件的结果的并集.

当没有用逗号分隔时,应该是所有条件都满足的交集.

层次选择器

jQuery 选择器详解

$(“ancestor descendant”) 选取ancestor元素里的所有descendant后代元素,包括直接子元素和更深嵌套的后代元素.

例:$(“div span”)选取<div>里的所有的<span>元素.

注意:选择器都是全页面扫描,返回一个集合,所有符合选择条件的元素都会被包括进去.所以多个<div>下面的<span>都会被选择.

$(“parent>child”)选取parent元素下的child子元素,即只有直接子元素被选取.其他后代元素不包括.

例:$(“div>span”)选取<div>元素下元素名是<span>的子元素.

$(“prev+next”)选取紧接在prev元素后的next元素(同一层级).

例:$(“.one+div”)选取class为one的下一个div元素.

$(“prev+siblings”)选取prev元素之后的所有siblings元素(同一层级).

例:$(“#two~div”)选取id为two的元素后面的所有<div>兄弟元素.

等价方法:

$(“prev+next”)等价于方法$(“prev”).next(“next”);选取prev元素之后紧接着的一个next元素.

$(“prev~sublings”)等价于方法$(“prev”).nextAll(“sublings”),选取prev元素之后的所有同级的sublings元素.

而$(“prev”).sublings(“next”)方法选取与prev同辈的所有next元素,与前后位置无关.

过滤选择器

过滤选择器这个大类又分为六个子类:

基本过滤;内容过滤;可见性过滤;属性过滤;子元素过滤;表单对象属性过滤.

基本过滤

jQuery 选择器详解

gt和lt分别是greaterthan和lessthan.

jQuery 选择器详解

内容过滤

jQuery 选择器详解

可见性过滤

jQuery 选择器详解

属性过滤

jQuery 选择器详解

属性过滤是用方括号来标识的.

注意多个属性过滤选择器连在一起的时候,取的是结果的交集.

子元素过滤

jQuery 选择器详解

前面基本过滤选择器里面index是从0算起的,这里子元素过滤选择器的index是从1开始算起的.

表单对象属性过滤

jQuery 选择器详解

表单选择器

jQuery 选择器详解

Javascript 相关文章推荐
jQuery基础语法实例入门
Dec 23 Javascript
jquery文档操作wrap()方法实例简述
Jan 10 Javascript
详解webpack的配置文件entry与output
Aug 21 Javascript
AngularJS实现的2048小游戏功能【附源码下载】
Jan 03 Javascript
不得不知的ES6小技巧
Jul 28 Javascript
简单了解JavaScript中常见的反模式
Jun 21 Javascript
express框架下使用session的方法
Jul 31 Javascript
关于layui flow loading占位图的实现方法
Sep 21 Javascript
2020淘宝618理想生活列车自动领喵币js脚本的代码
Jun 02 Javascript
vue 保留两位小数 不能直接用toFixed(2) 的解决
Aug 07 Javascript
jQuery实现简单全选框
Sep 13 jQuery
vue实现可以快进后退的跑马灯组件
Apr 08 Vue.js
jQuery使用之标记元素属性用法实例
Jan 19 #Javascript
jQuery应用之jQuery链用法实例
Jan 19 #Javascript
浅谈Unicode与JavaScript的发展史
Jan 19 #Javascript
jQuery中ready事件用法实例
Jan 19 #Javascript
jQuery中offsetParent()方法用法实例
Jan 19 #Javascript
jQuery中outerWidth()方法用法实例
Jan 19 #Javascript
javascript数据类型示例分享
Jan 19 #Javascript
You might like
PHP4.04简明安装
2006/10/09 PHP
PHP页面间参数传递的四种方法详解
2013/06/09 PHP
基于php和mysql的简单的dao类实现crud操作功能
2014/01/27 PHP
php实现的百度搜索某地天气的小偷代码
2014/04/23 PHP
一个挺有意思的Javascript小问题说明
2011/09/26 Javascript
Javascript中的五种数据类型详解
2014/12/26 Javascript
jQuery中:last-child选择器用法实例
2014/12/31 Javascript
jquery实现带缩略图的可定制高度画廊效果(5种)
2015/08/28 Javascript
jquery动态添加文本并获取值的方法
2016/10/12 Javascript
js拖拽功能实现代码解析
2016/11/28 Javascript
微信小程序开发之选项卡(窗口底部TabBar)页面切换
2017/04/12 Javascript
jQuery remove()过滤被删除的元素(推荐)
2017/07/18 jQuery
React实践之Tree组件的使用方法
2017/09/30 Javascript
vue中的watch监听数据变化及watch中各属性的详解
2018/09/11 Javascript
详解@Vue/Cli 3 Invalid Host header 错误解决办法
2019/01/02 Javascript
JS div匀速移动动画与变速移动动画代码实例
2019/03/26 Javascript
微信小程序开发之转发分享功能
2019/10/22 Javascript
jQuery模仿ToDoList实现简单的待办事项列表
2019/12/30 jQuery
python中for语句简单遍历数据的方法
2015/05/07 Python
Python正则表达式教程之一:基础篇
2017/03/02 Python
在Python 2.7即将停止支持时,我们为你带来了一份python 3.x迁移指南
2018/01/30 Python
Python2.7 实现引入自己写的类方法
2018/04/29 Python
Python List cmp()知识点总结
2019/02/18 Python
Django实现跨域请求过程详解
2019/07/25 Python
python使用socket 先读取长度,在读取报文内容示例
2019/09/26 Python
Python实现使用dir获取类的方法列表
2019/12/24 Python
Django模板标签{% for %}循环,获取制定条数据实例
2020/05/14 Python
解决python对齐错误的方法
2020/07/16 Python
python实现每天自动签到领积分的示例代码
2020/08/18 Python
戴尔英国翻新电脑和电子产品:Dell UK Refurbished Computers
2019/07/30 全球购物
升职演讲稿范文
2014/05/23 职场文书
中学清明节活动总结
2014/07/04 职场文书
2015年小学生自我评价范文
2015/03/03 职场文书
2015年教师节演讲稿范文
2015/03/19 职场文书
英文自荐信范文
2015/03/25 职场文书
Python函数对象与闭包函数
2022/04/13 Python