这是看《锋利的jquery》时,整理出来的一些东西,很多方法,需要大家亲自实践一下,才会理解得更加深刻,切莫眼高手低哦……
Jquery选择器分类:基本选择器,层次选择器,过滤选择器,表单选择器
一、基本选择器:jquery中最常用的选择器,也是最简单的选择器。通过元素id、class和标签名等来查找DOM元素。
表-基本选择器
选择器 |
描述 |
返回 |
示例 |
#id |
根据给定的id匹配一个元素 |
单个元素 |
$(“#test”)选取id为test的元素 |
.class |
根据给定的类名匹配元素 |
集合元素 |
$(“.test”)选取所有class为test的元素 |
element |
根据给定的的元素名匹配元素 |
集合元素 |
$(“p”) 选取所有的元素 |
* |
匹配所有元素 |
集合元素 |
$(“*”)选取所有元素 |
Selector1,Selector2, ……, SelectorN |
将每一个选择器匹配到的元素合并后一起返回 |
集合元素 |
$(“div,span,p.myClass”)选取所有 |
二、层次选择器:通过DOM元素之间的层次关系获取特定元素,如后代元素、子元素、相邻元素、兄弟元素等。层次选择器是一个很好的选择
表-层次选择器
选择器 |
描述 |
返回 |
示例 |
$(“ancestor descendant”) |
选取ancestor元素里所有descendant(后代)元素 |
集合元素 |
$(“div span”)选取 |
$(“parent>child”) |
选取父元素下的子元素 |
集合元素 |
$(“div>span”)选取 |
$(‘prev+next') |
选取紧接在prev元素后的next元素 |
集合元素 |
$(‘.one+div') 选取class为one的下一个 |
$(‘prev~siblings') |
选取prev元素之后的所有元素 |
集合元素 |
$(‘.one+div') 选取class为one的元素后面所有 |
注意:
$(‘prev+next')选择器与next()方法的等价关系
$(‘.one+div') 等价于 $(“.one”).next(“div”)
$(‘prev~siblings')选择器与nextAll()方法的等价关系
$(‘.one~div') 等价于 $(“.one”).nextAll(“div”)
三、过滤选择器:主要是通过特定的过滤选择器规则来筛选出所需的DOM元素,过滤规则与css中伪类选择器语法相同,即选择器都以一个冒号(:)开头。
按照不同的过滤规则,过滤选择器分为:基本过滤选择器、内容过滤选择器、可见性过滤选择器、属性过滤选择器、子元素过滤选择器、表单对象属性座率选择器
表1-基本过滤选择器
选择器 |
描述 |
返回 |
示例 |
:first |
选取第一个元素 |
单个元素 |
$(“div:first”)选取所有 |
:last |
选取最后一个元素 |
单个元素 |
$(“div:last”)选取所有 |
:not(selector) |
去除所有与给定选择器匹配的元素 |
集合元素 |
$(“input:not(.myClass)”) 选取class为不是myClass的元素 |
:even |
选取索引是偶数的所有元素,索引从0开始 |
集合元素 |
$(“input:even”) 选取索引是偶数的元素 |
:odd |
选取索引是奇数的所有元素,索引从0开始 |
集合元素 |
$(“input:odd”) 选取索引是奇数的元素 |
:eq(index) |
选取索引等于index的元素(index从0开始) |
单个元素 |
$(“input:eq(1)”选取索引为1的元素 |
:gt(index) |
选取索引大于index的元素(index从0开始) |
集合元素 |
$(“input:gt(1)”) 选取索引大于1的元素(注:大于1,而不包括1) |
:lt(index) |
选取索引小于index的元素(index从0开始) |
集合元素 |
$(“input:gt(1)”) 选取索引小于1的元素(注:小于1,而不包括1) |
:header |
选取所有的标题元素,例如h1,h2,h3等待 |
集合元素 |
$(“:header”)选取网页中所有的,,…… |
:animated |
选取当前正在执行动画的所有元素 |
集合元素 |
$(“div:animated”)选取正在执行动画的 |
表2-内容过滤选择器
选择器 |
描述 |
返回 |
示例 |
:contains(text) |
选取含有文本内容为”text”的元素 |
集合元素 |
$(“div:contains(‘我')”)选取含有文本“我”的 |
:empty |
选取不包含子元素或者文本的空元素 |
集合元素 |
$(“div:empty”)选取不包含子元素(包括文本元素)的 |
:has(selector) |
选取含有选择器所匹配的元素的元素 |
集合元素 |
$(“div:has(p)”) 选取含有元素的 |
:parent |
选取含有子元素或者文本元素 |
集合元素 |
$(“div:parent”) 选取拥有子元素(包括文本元素)的 |
表3-可见性过滤选择器
选择器 |
描述 |
返回 |
示例 |
:hidden |
选取所有不可见的元素 |
集合元素 |
$(“:hidden”)选取所有不可见的元素。包括, |
:visible |
选取不包含子元素或者文本的空元素 |
集合元素 |
$(“div:visible”)选取所有可见的 |
表4-属性过滤选择器
选择器 |
描述 |
返回 |
示例 |
[attribute] |
选取拥有此属性的元素 |
集合元素 |
$(“div[id]”)选取拥有属性id的元素 |
[attribute=value] |
选取属性的值为value的元素 |
集合元素 |
$(“div[title=test]”)选取属性title为”test”的 |
[attribute!=value] |
选取属性的值不等于value的元素 |
集合元素 |
$(“div[title!=test]”)选取属性title不等于”test”的 |
[attribute^=value] |
选取属性的值以value开始的元素 |
集合元素 |
$(“div[title^=test]”)选取属性title以”test”开始的 |
[attribute$=value] |
选取属性的值以value结束的元素 |
集合元素 |
$(“div[title$=test]”)选取属性title以”test”结束的 |
[attribute*=value] |
选取属性值含有value的元素 |
集合元素 |
$(“div[title*=test]”)选取属性title含有”test”的 |
[selector1][selector2][selectorN] |
用属性选择器合并成一个复合属性选择器,满足多个条件。每个选择一次,缩小一次范围 |
集合元素 |
$(“div[id][title$='tets']”)选取拥有属性id,并且属性title以”test”结束的 |
表5-子元素过滤选择器
选择器 |
描述 |
返回 |
示例 |
:nth-child(index/even/odd/equation) |
选取每个父元素下的第index个子元素或者奇偶元素(index从1算起) |
集合元素 |
:eq(index)只匹配一个元素,而:nth-child将为每一个父元素匹配子元素,并且:nth-child(index)的index是从1开始的,而:eq(index)是从0算起 |
:first-child |
选取每个父元素的第一个子元素 |
集合元素 |
:first只返回单个元素,而:first-child选择符将为每个父元素匹配第一个子元素 |
:last-child |
选取每个父元素的最后一个子元素 |
集合元素 |
:last只返回单个元素,而:last-child选择符将为每个父元素匹配最后一个子元素 |
:only-child |
如果某个元素是它父元素中唯一的子元素,那么将会被匹配。如果父元素中含有其他元素,则不会被匹配 |
集合元素 |
|
:nth-child()选择器详细功能
(1):nth-child(even)能选取每个父元素下的索引值是偶数的元素。
(2):nth-child(odd) 能选取每个父元素下的索引值是奇数的元素。
(3):nth-child(2)能选取每个父元素下的索引值等于2的元素
(4):nth-child(3n)能选取每个父元素下的索引值是3的倍数的元素,(n从0开始)。
(5):nth-child(3n+1)能选取每个父元素的索引值是(3n+1)的元素。(n从0开始)
表6-表单对象属性过滤选择器
选择器 |
描述 |
返回 |
示例 |
:enabled |
选取所有可用元素 |
集合元素 |
$(“#form1:enabled”) ;选取id为”form1”的表单内的所有可用元素 |
:disabled |
选取所有不可用元素 |
集合元素 |
$(“#form1:disabled”) ;选取id为”form1”的表单内的所有不可用元素 |
:checked |
选取所有被选中的元素(单选框,复选框) |
集合元素 |
$(“input:checked”);选取所有被选中的元素 |
:selected |
选取所有被选中的选项元素(下拉列表) |
集合元素 |
$(“select:selected”);选取所有被选中的选项元素 |
四、表单选择器
表-表单对象属性过滤示例
选择器 |
描述 |
返回 |
示例 |
:input |
选取所有可用元素 |
集合元素 |
$(“:input”) 选取所有、、和元素 |
:text |
选取所有不可用元素 |
集合元素 |
$(“:text”) 选取所有的单行文本 |
:password |
选取所有的密码框 |
集合元素 |
$(“: password”)选取所有的密码框 |
:radio |
选取所有的单选框 |
集合元素 |
$(“:radio”)选取所有的单选框 |
:checkbox |
选取所有的多选框 |
集合元素 |
$(“:checkbox”)选取所有的多选框 |
:submit |
选取所有的提交按钮 |
集合元素 |
$(“:submit”)选取所有的提交按钮 |
:image |
选取所有的图像按钮 |
集合元素 |
$(“:image”)选取所有的图像按钮 |
:reset |
选取所有的重置按钮 |
集合元素 |
$(“:reset”)选取所有的重置按钮 |
:button |
选取所有的按钮 |
集合元素 |
$(“:button”)选取所有按钮 |
:file |
选取所有的上传域 |
集合元素 |
$(:file)选取所有的上传域 |
:hidden |
选取所有不可见元素 |
集合元素 |
$(“:hidden”)选取所有不可见元素 |

C 和JavaScript通过WebAssembly实现互操作性。1)C 代码编译成WebAssembly模块,引入到JavaScript环境中,增强计算能力。2)在游戏开发中,C 处理物理引擎和图形渲染,JavaScript负责游戏逻辑和用户界面。

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

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

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

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

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

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

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


热AI工具

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

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

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

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

热门文章

热工具

VSCode Windows 64位 下载
微软推出的免费、功能强大的一款IDE编辑器

MinGW - 适用于 Windows 的极简 GNU
这个项目正在迁移到osdn.net/projects/mingw的过程中,你可以继续在那里关注我们。MinGW:GNU编译器集合(GCC)的本地Windows移植版本,可自由分发的导入库和用于构建本地Windows应用程序的头文件;包括对MSVC运行时的扩展,以支持C99功能。MinGW的所有软件都可以在64位Windows平台上运行。

mPDF
mPDF是一个PHP库,可以从UTF-8编码的HTML生成PDF文件。原作者Ian Back编写mPDF以从他的网站上“即时”输出PDF文件,并处理不同的语言。与原始脚本如HTML2FPDF相比,它的速度较慢,并且在使用Unicode字体时生成的文件较大,但支持CSS样式等,并进行了大量增强。支持几乎所有语言,包括RTL(阿拉伯语和希伯来语)和CJK(中日韩)。支持嵌套的块级元素(如P、DIV),

PhpStorm Mac 版本
最新(2018.2.1 )专业的PHP集成开发工具

SublimeText3 英文版
推荐:为Win版本,支持代码提示!