在jquery库中,可以通过选择器实现DOM元素快捷选择这一重要的核心功能。

1.选择器的优势

(1)代码更简单

由于在jquery库中,封装了大量可以通过选择器直接调用的方法或函数,使编写代码更加简单轻松,简单几行代码就可以实现较为复杂的功能。

(2)完善的检测机制

在传统的javascript代码中,给页面中某元素设置事务时必须先找到元素,然后赋予相应的属性或时间;如果该元素在页面中不存在或被前面代码所删除,那么浏览器将提示运行出出错信息,影响后续代码的执行。因此,在javascript代码中,为了避免显示这样的出错信息,先要检测钙元素是否存在,然后在运行其属性货时间代码,从而导致代码冗余,影响执行效率。

在jquery选择器定位页面元素时,无需考虑所定位页面元素是否存在,即使该页面不存在也元素,浏览器也不会提示出错信息,极大地方便了代码的执行效率。

2.jquery选择器的类型

根据所获取页面中元素的不同,可以将jquery选择器分为四大类型:基本选择器、层次选择器、过滤选择器、表单选择器。其中在过滤选择器中又可以分为:简单过滤选择器、内容过滤选择器、可见性过滤选择器、属性过滤选择器、子元素过滤选择器、子元素过滤选择器、表单对象属性过滤选择器。

其分类结构如图所示:

(1)基本选择器

基本选择器是jquery中使用最平凡的选择器,它由元素ID、Class、元素名、多个选择符组成,通过今本选择器可以实现大多数页面元素的查找,如表所示:

 基本选择器语法
选择器 功能描述 返回值
#id   根据给定的ID 匹配一个元素 单个元素
element 根据给定元素名匹配所有元素 元素集合
.class 根据给定类型匹配元素 元素集合
* 匹配所有元素 元素集合
selsctor1,selectorN 将每一个选择器匹配到的元素合并后一起返回 元素集合

(2)层次选择器

层次选择器通过DOM元素件的层次关系获取元素,其主要的层次关系包括后代、自带、相邻、兄弟关系,通过其中某类关系可以方便快捷地定位元素,其详细说明如表所示

层次选择器语法
选择器 功能描述 返回值
ancestors descendant 根据祖先元素匹配所有的后代元素 元素集合
parent>child 根据父元素匹配所有的子元素 元素集合
prev + next 匹配所有进阶在prev元素后的响铃元素 元素集合
prev ~ silings 匹配prev元素之后的所有兄弟元素 元素集合

ancestor descendant 与 parent > child 所选择的元素集合是不同的,前者的层次关系是祖先与后代,而后者的是父子关系;另外,prev + next可以使用.next()代替,而prev ~ siblings可以使用nextAll()代替。

(3)过滤选择器

  简单过滤选择器

过滤选择器根据某类过滤规则进行匹配,书写是都以冒号( :)开头;简单过滤选择器是过滤选择器中使用最广泛的一种,其详细说明如表所示:

简单过滤选择器语法
选择器 功能描述 返回值
first() 或 :first 获取第一个元素 单个元素
last() 或 :last 获取最后元素 单个元素
:not(selector) 获取除给定元素外的所有元素 元素集合
:even 获取除所有索引值为偶数的元素,索引号从0开始 元素集合
:odd 获取除所有索引值为奇数的元素,索引号从0开始 元素集合
:eq(index) 获取制定索引值的元素,索引号从0开始 单个元素
:gt(index) 获取所有大于索引值的元素,索引号从0开始 元素集合
:lt(index) 获取制所有小于引值的元素,索引号从0开始 元素集合
:header 获取所有标题类型的元素,如h1、h2··· 元素集合
:animated 获取正在执行动画效果的元素 元素集合

  内容过滤选择器

内容选择器根据元素中的文字内容或者所包含的子元素特征获取元素,其文字内容可以模糊或决定匹配进行元素定位,其详细说明如表所示

内容过滤选择器语法

选择器 功能描述 返回值
:contains(text) 获取包含给定文本的元素 元素集合
:enpty 获取所有不包含子元素或者文本的空元素 元素集合
:has(selector) 获取含有选择器所匹配的元素 元素集合
:parent 获取含有子元素或者文本的元素 元素集合

  可见性过滤选择器

可见性过滤选择器根据元素是否可见的特征获取元素,其详细说明如表所示:

可见性过滤选择器语法
选择器 功能描述 返回值
:hidden 获取所有不可见元素 元素集合
:visible 获取所有可可见元素 元素集合

  属性过滤选择器

属性过滤选择器根据元素的某个熟属性获取元素,如ID好或匹配属性值的内容,并以“[”号开始、以“]”号结束。其详细说明如表所示:

属性过滤选择器语法
选择器 功能描述 返回值
[attrbute] 获取包含给定属性的元素 元素集合
[attribute=value] 获取等于给定元素是某个特定值的元素 元素集合
[attribute!=value] 获取不等于给定元素是某个特定值的严肃 元素集合
[attribute] 获取给定属性是以某些值开始的元素 元素集合
[attribute$==value] 获取给定属性是以某些值结束的元素 元素集合
[attribute*=value] 获取给定的属性是以包含某些值的元素 元素集合
[selector1][selector2][selector3] 获取满足多个条件的复合属性的元素 元素集合

  子元素过滤选择器

在页面开发过程中,常常遇到突出制定某行的需求。为了实现这一功能,jquery中可以通过子元素过滤器选择器轻松获取所有父元素中制定的某个元素。其详细说明如表所示:

子元素过滤选择器
选择器 功能描述 返回值
:nth-child(eq|even|odd|index) 获取每个父元素下的特定位置元素,索引号从1开始 元素集合
:first-child 获取每个父元素下的第一个子元素 元素集合
:last-child 获取每个父元素下的最后一个子元素 元素集合
:only-child 获取每个父元素下的仅有一个子元素 元素集合

  表单对象属性过滤选择器

表单对象属性过滤选择器通过表单中的某对象属性特征获取该元素,如enabled、disabled、checked、selected属性。详细说明如表所示:

表单对象属性过滤选择器语法
选择器 功能描述 返回值
:enabled 获取表单中所有属性为可用的元素 元素集合
:disabled 获取表单中所有属性为不可用的元素 元素集合
:checked 获取表单中所有被选中的元素 元素集合
:selected 获取表单中所有被选中的option元素 元素集合

(4)表单选择器

无论是提交还是传递数据,表单在页面中的作用是显而易见的。通过表单进行数据的提交或处理,在前端页面开发中占据重要地位。因此,为了能更加方便地、高效地、使用表单,在jquery选择器中引入表单选择器,该选择器转为表单量身打造,通过他可以在页面中快速定位某些单对象。其详细说明如表所示

表单选择器语法
选择器 功能描述 返回值
:input 获取所有 input、textarea、aelect 元素集合
:text 获取所有单行文本框 元素集合
:password 获取所有密码狂 元素集合
:radio 获取所有复选框 元素集合
:checkbox 获取所有复选框 元素集合
:submit 获取所有提交按钮 元素集合
:image 获取所有图像域 元素集合
:reset 获取所有重置按钮 元素集合
:botton 获取所有按钮 元素集合
:file 获取所有文件域 元素集合

二、jquery选择器的更多相关文章

  1. jQuery基础学习(二)—jQuery选择器

    一.jQuery基本选择器 1.CSS选择器     在学习jQuery选择器之前,先介绍一下之前学过的CSS选择器. 选择器 语法 描述 示例   标签选择器 E {                 ...

  2. jQuery学习之二 jQuery选择器

    一.jQuery选择器是什么1.CSS选择器2.jQuery选择器 二.jQuery选择器的优势1.简洁的写法2.支持从CSS1到CSS3选择器3.完善的处理机制  传统js选择器假如要操作的元素不存 ...

  3. js jquery 选择器总结

    js jquery 选择器总结 一.原始JS选择器. id选择器:document.getElementById("test"); name选择器:document.getElem ...

  4. 我人生中的jQuery选择器

    Jquery选择器 一.Jquery选择器简介 JavaScript只是一种运行于客户端,可以被客户端浏览器解析的一段代码.它和java没有任何关系.JavaScript简称JS.jQuery是对JS ...

  5. jQuery学习笔记(一)jQuery选择器

    目录 jQuery选择器的优点 基本选择器 层次选择器 过滤选择器 表单选择器 第一次写博客,希望自己能够长期坚持,以写博客的方式作为总结与复习. 最近一段时间开始学习jQuery,通过写一个jQue ...

  6. jQuery简介以及jQuery选择器

    一 简介 1 定义:jQuery库是JavaScript的封装库 2 优点: 1) : 代码开源 2) : 选择器强大 3) : 完善的Ajax 4) : 浏览器兼容性高 5) : 文档完善(帮助文档 ...

  7. JQuery选择器(转载)

    原文:https://blog.csdn.net/colorapp/article/details/44279645 一. jQuery选择器是什么1. CSS选择器要是某个样式应用于特定的HTML元 ...

  8. jQuery(二):jQuery选择器

    jQuery选择器类似于CSS选择器,用来选取网页中的元素.例如: $("h3").css("background-color","red" ...

  9. jQuery选择器与过滤器(二)

    一.jQuery选择器1.基本选择器:所有选择器    *标签选择器    标签名ID选择器    #ID类选择器    .className组合选择器    selector1,selector2 ...

  10. jQuery-1.9.1源码分析系列(二)jQuery选择器

    1.选择器结构 jQuery的选择器根据源码可以分为几块 init: function( selector, context, rootjQuery ) { ... // HANDLE: $(&quo ...

随机推荐

  1. mysql存储过程中 乱码问题解决办法

    中文乱码无论在何时都是一个头疼的问题,mysql的存储过程参数也同样存在这个问题.1.直接使用insert into语句没问题,能够正常插入汉字.2.把insert into语句移到Procedure ...

  2. input文本框设置和移除默认值

    input文本框设置和移除默认值 这里想实现的效果是:设置和移除文本框默认值,如下图鼠标放到文本框中的时候,灰字消失. 1.可以用简单的方式,就是给input文本框加上onfocus属性,如下代码: ...

  3. js 中 Math对象

    Math 对象是一个固有的对象,无需创建它,直接把 Math 作为对象使用就可以调用其所有属性和方法.这是它与Date,String对象的区别. Math 对象属性 Math 对象方法

  4. Caffe初试(二)windows下的cafee训练和测试mnist数据集

    一.mnist数据集 mnist是一个手写数字数据库,由Google实验室的Corinna Cortes和纽约大学柯朗研究院的Yann LeCun等人建立,它有60000个训练样本集和10000个测试 ...

  5. Java Mysql连接池配置和案例分析--超时异常和处理

    前言: 最近在开发服务的时候, 发现服务只要一段时间不用, 下次首次访问总是失败. 该问题影响虽不大, 但终究影响用户体验. 观察日志后发现, mysql连接因长时间空闲而被关闭, 使用时没有死链检测 ...

  6. JavaScript链表

        //实现列表类     function list() {         this.listSize = 0;//元素个数 属性         this.pos = 0;//当前位置 属性 ...

  7. Fiddler响应post的请求 request body里面填写什么?

    若是想传json格式的数据,请求头可以这样写:(应该先勾选 post,然后写上正确滴请求地址)User-Agent: Fiddler Host: localhost:1455 <span sty ...

  8. 事务操作(BEGIN/COMMIT/ROLLBACK/SAVE TRANSACTION)

    BEGIN TRANSACTION 标记一个显式本地事务的起始点. BEGIN TRANSACTION 使 @@TRANCOUNT 按 1 递增. BEGIN TRANSACTION 代表一点,由连接 ...

  9. UVA 11645 Bits(组合数学)

    从左往右处理,左半部分记为left, 右半部分记为right,若i,i -1均为1, 贡献为ans += (left + 1) + right * (1ll << (i - 1)); 否则 ...

  10. WCF服务承载(笔记)

    自托管(也做自承载) 承载 WCF 服务最灵活.最便捷的方法就是进行自承载.要能够自承载服务,必须满足两个条件.第一,需要 WCF 运行时:第二,需要可以承载 ServiceHost 的托管 .NET ...