搜索
首页web前端js教程JQuery 选择器、过滤器介绍_jquery

今日的学习再结合昨天的JavaScriptDOM的内容,让我对此十分清晰。JQuery原则:“write less, do more.”,这句话已充分说明它对简化使用JavaScriptDOM编程的功力!
每位老师都有自己的教学方式,可能根据教授的内容的不同教学方式也有轻微的变化。老佟是一位非常有经验的软件教师,之前他在大连的软件公司做培训。经过多年的总结,他已经有自己一套成熟的教学方式。这个方式让我十分喜欢!至于是什么方式,你自己来体验吧!哈哈~~
从学习JavaWEB、Struts1到现在的JavaScript,我已经找到了WEB应用开发的核心——MVC。是的,就是MVC。其实MVC应该是根据WEB的核心被创造出来的模式,难道不是吗!这一整套工具,就是分别对视图层、控制层和数据模型层的操作。似乎现在才找到了一些感觉,因为以前学习servlet时,知道它可以处理用户的请求,老师讲什么就学习什么。但现在有思想了,老师你无论讲什么,我都知道它应该用在哪一层,有什么用途,这样提高了我的学习效率。这是一个非常好的成长!对以后的成长大有帮助。
接下来这些灵散的知识就不多了,然后就开始做项目了。两个字,快、爽!Ok,开始整理学习内容。
一、JQuery与JavaScript
1.JavaScript库
使用过JavaScriptDOM的人都应该知道(比如昨天的练习),使用JSDOM进行页面的操作是十分麻烦的。比如获取、修改及添加子节点等这些操作。如果操作一个复杂的页面呢?Ok,JavaScript库因此诞生了。
目前比较常见的JavaScript库有:
JQuery 选择器、过滤器介绍_jquery
2.JQuery简介
JQuery是继Prototype之后又一个优秀的JavaScript库。
JQuery理念:write less , do more.
JQuery优势:轻量级、强大的选择器、出色的 DOM 操作的封装、可靠的事件处理机制、完善的Ajax、出色的浏览器兼容性、链式操作方式……。

二、JQuery对象与DOM对象
1.JQuery对象
JQuery对象就是使用“$(“DOMObj”)”,将DOM对象包装起来。一般在JQuery对象前面加上“$”这样与DMO对象区分,它已经是一种公认的命名约定。JQuery对象不能调用DOM对象的属性和方法,同样DOM对象也不能调用JQuery对象的属性和方法。

2.JQuery对象转成DOM对象
如果想使用JQuery对象调用DOM对象的方法,怎么办?应该将JQuery对象转换成DOM对象,JQuery对象是一个数组对象,这个很特别。所以只需调用JQueryObj[x]或JQueryObj.get(X);即可转换为DOM对象。

3.DOM对象转换成JQuery对象
使用“$(“DOMObj”)”将DOM对象包装起来就可以了。

三、JQuery选择器
选择器是JQuery的根基,在JQuery 中,对事件处理,遍历DOM和Ajax操作都依赖于选择器。这也是今天我们学习的重点内容。

1.基本选择器
基本选择器是JQuery中最常用的选择器,也是最简单的选择器,它通过元素id、class 和标签名来查找DOM元素。这个非常重要,下面的内容都是以此为基础,逐级提高的。
1).“$(“#id”)”,获取id指定的元素,id是全局唯一的,所以它只有一个成员。
2).“$(“.class”)”,获取class指定的元素,不同的元素可以具有相同的class属性,所以它可能具有多个成员。
3).“$(“element”)”,获取element(元素名,比如div、table等)指定的元素,它可能具有多个成员。
4).“$(“*”)”,获取所有元素,相当于document。
5).“$(“selector1,selector2,…,selectorN”)”,将每个选择器匹配到的元素合并后一起返回。返回selector1匹配的集合+selector2匹配的集合+…+selectorN匹配的集合。

2.层次选择器
什么是层次?层次就是父子关系、兄弟关系的节点。所以,层次选择器就是用来获取指定元素的父子节点、兄弟节点。
1).“$(“ancestor descendant”)”,获取ancestor元素下边的所有元素。
2).“$(“parent > child”)”,获取parent元素下边的所有子元素(只包含第一层子元素)。
3).“$(“pre + next”)”,获取紧随pre元素的后一个兄弟元素。
4).“$(“pre ~ siblings”)”,获取pre元素后边的所有兄弟元素。

3.过滤选择器
过滤?肯定是要添加过滤条件的。通过“:”添加过滤条件,比如“$(“div:first”)”返回div元素集合的第一个div元素,first是过滤条件。
按照不同的过滤规则,过滤选择器可以分为基本过滤,内容过滤,可见性过滤,属性过滤,子元素过滤和表单对象属性过滤选择器。

1). 基本过滤选择器
a) “:first”,选取第一个元素,别忘记它也是被放在一个集合里哦!因为JQuery它是DOM对象的一个集合。如,“$("tr:first")”返回所有tr元素的第一个tr元素,它仍然被保存在集合中。
b) “:last”,选取最后一个元素。如,“$("tr:last")”返回所有tr元素的最后一个tr元素,它仍然被保存在集合中。
c) “:not(selector)”,去除所有与给定选择器匹配的元素。如,“$("input:not(:checked)")”返回所有input元素,但去除被选中的元素(单选框、多选框)。
d) “:even”,选取所有元素中偶数的元素。因为JQuery对象是一个集合,这里的偶数指的就是集合的索引,索引从0开始。
e) “:odd”,选取所有元素中奇数的元素,索引从0开始。
f) “:eq(index)”,选取指定索引的元素,索引从0开始。
g) “:gt(index)”,选取索引大于指定index的元素,索引从0开始。
h) “:lt(index)”,选取索引小于指定index的元素,索引从0开始。
i) “:header”,选取所有的标题元素,如hq、h2等。
j) “:animated”,选取当前正在执行的所有动画元素。

2). 内容过滤选择器
它是对元素和文本内容的操作。
a) “:contains(text)”,选取包含text文本内容的元素。
b) “:empty”,选取不包含子元素或者文本节点的空元素。
c) “:has(selector)”,选取含有选择器所匹配的元素的元素。
d) “:parent”,选取含有子元素或文本节点的元素。(它是一个父节点)

3). 可见性过滤选择器
根据元素的可见与不可见状态来选取元素。
“:hidden”,选取所有不可见元素。
“:visible”,选择所有可见元素。
可见选择器:hidden 不仅包含样式属性 display 为 none 的元素,也包含文本隐藏域 ()和 visible:hidden 之类的元素。

4).属性过滤选择器
通过元素的属性来选取相应的元素。
a) “[attribute]”,选取拥有此属性的元素。
b) “[attribute=value]”,选取指定属性值为value的所有元素。
c) “[attribute !=value]”,选取属性值不为value的所有元素。
d) “[attribute ^= value]”,选取属性值以value开始的所有元素。
e) “[attribute $= value]”,选取属性值以value结束的所有元素。
f) “[attribute *= value]”,选取属性值包含value的所有元素。
g) “[selector1] [selector2]…[selectorN]”,复合性选择器,首先经[selector1]选择返回集合A,集合A再经过[selector2]选择返回集合B,集合B再经过[selectorN]选择返回结果集合。

5). 子元素过滤选择器
一看名字便是,它是对某一元素的子元素进行选取的。
a) “:nth-child(index/even/odd)”,选取索引为index的元素、索引为偶数的元素、索引为奇数的元素。
l nth-child(even/odd):能选取每个父元素下的索引值为偶(奇)数的元素。
l nth-child(2):能选取每个父元素下的索引值为 2 的元素。
l nth-child(3n):能选取每个父元素下的索引值是 3 的倍数的元素。
l nth-child(3n + 1):能选取每个父元素下的索引值是 3n + 1的元素。
b) “:first-child”,选取第一个子元素。
c) “:last-child”,选取最后一个子元素。
d) “:only-child”,选取唯一子元素,它的父元素只有它这一个子元素。

6). 表单过滤选择器
选取表单元素的过滤选择器。
a) “:input”,选取所有

声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
从网站到应用程序:JavaScript的不同应用从网站到应用程序:JavaScript的不同应用Apr 22, 2025 am 12:02 AM

JavaScript在网站、移动应用、桌面应用和服务器端编程中均有广泛应用。1)在网站开发中,JavaScript与HTML、CSS一起操作DOM,实现动态效果,并支持如jQuery、React等框架。2)通过ReactNative和Ionic,JavaScript用于开发跨平台移动应用。3)Electron框架使JavaScript能构建桌面应用。4)Node.js让JavaScript在服务器端运行,支持高并发请求。

Python vs. JavaScript:比较用例和应用程序Python vs. JavaScript:比较用例和应用程序Apr 21, 2025 am 12:01 AM

Python更适合数据科学和自动化,JavaScript更适合前端和全栈开发。1.Python在数据科学和机器学习中表现出色,使用NumPy、Pandas等库进行数据处理和建模。2.Python在自动化和脚本编写方面简洁高效。3.JavaScript在前端开发中不可或缺,用于构建动态网页和单页面应用。4.JavaScript通过Node.js在后端开发中发挥作用,支持全栈开发。

C/C在JavaScript口译员和编译器中的作用C/C在JavaScript口译员和编译器中的作用Apr 20, 2025 am 12:01 AM

C和C 在JavaScript引擎中扮演了至关重要的角色,主要用于实现解释器和JIT编译器。 1)C 用于解析JavaScript源码并生成抽象语法树。 2)C 负责生成和执行字节码。 3)C 实现JIT编译器,在运行时优化和编译热点代码,显着提高JavaScript的执行效率。

JavaScript在行动中:现实世界中的示例和项目JavaScript在行动中:现实世界中的示例和项目Apr 19, 2025 am 12:13 AM

JavaScript在现实世界中的应用包括前端和后端开发。1)通过构建TODO列表应用展示前端应用,涉及DOM操作和事件处理。2)通过Node.js和Express构建RESTfulAPI展示后端应用。

JavaScript和Web:核心功能和用例JavaScript和Web:核心功能和用例Apr 18, 2025 am 12:19 AM

JavaScript在Web开发中的主要用途包括客户端交互、表单验证和异步通信。1)通过DOM操作实现动态内容更新和用户交互;2)在用户提交数据前进行客户端验证,提高用户体验;3)通过AJAX技术实现与服务器的无刷新通信。

了解JavaScript引擎:实施详细信息了解JavaScript引擎:实施详细信息Apr 17, 2025 am 12:05 AM

理解JavaScript引擎内部工作原理对开发者重要,因为它能帮助编写更高效的代码并理解性能瓶颈和优化策略。1)引擎的工作流程包括解析、编译和执行三个阶段;2)执行过程中,引擎会进行动态优化,如内联缓存和隐藏类;3)最佳实践包括避免全局变量、优化循环、使用const和let,以及避免过度使用闭包。

Python vs. JavaScript:学习曲线和易用性Python vs. JavaScript:学习曲线和易用性Apr 16, 2025 am 12:12 AM

Python更适合初学者,学习曲线平缓,语法简洁;JavaScript适合前端开发,学习曲线较陡,语法灵活。1.Python语法直观,适用于数据科学和后端开发。2.JavaScript灵活,广泛用于前端和服务器端编程。

Python vs. JavaScript:社区,图书馆和资源Python vs. JavaScript:社区,图书馆和资源Apr 15, 2025 am 12:16 AM

Python和JavaScript在社区、库和资源方面的对比各有优劣。1)Python社区友好,适合初学者,但前端开发资源不如JavaScript丰富。2)Python在数据科学和机器学习库方面强大,JavaScript则在前端开发库和框架上更胜一筹。3)两者的学习资源都丰富,但Python适合从官方文档开始,JavaScript则以MDNWebDocs为佳。选择应基于项目需求和个人兴趣。

See all articles

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

螳螂BT

螳螂BT

Mantis是一个易于部署的基于Web的缺陷跟踪工具,用于帮助产品缺陷跟踪。它需要PHP、MySQL和一个Web服务器。请查看我们的演示和托管服务。

Dreamweaver Mac版

Dreamweaver Mac版

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

PhpStorm Mac 版本

PhpStorm Mac 版本

最新(2018.2.1 )专业的PHP集成开发工具

WebStorm Mac版

WebStorm Mac版

好用的JavaScript开发工具