可见性选择器
如果我们使用可见性来控制网页组件的流程和交互,使用可见性 jQuery 选择器可以轻松选择隐藏或者可见的 HTML 元素。
语法/示例 | 描述 |
---|---|
:hidden 选择器 | 选择所有隐藏的元素。 |
:visible 选择器 | 选择所有可见的元素。 |
表单选择器
表单选择器使我们能够根据表单元素的状态选择表单中的元素。
语法/示例 | 描述 |
---|---|
:button 选择器 | 选择所有按钮元素和按钮类型的元素。 |
:checkbox 选择器 | 选择复选框类型的所有元素。 |
:checked 选择器 | 匹配所有选中或者选中的元素。 |
:disabled 选择器 | 选择所有禁用的元素。 |
:enabled 选择器 | 选择所有启用的元素。 |
:file 选择器 | 选择文件类型的所有元素。 |
:focus 选择器 | 如果当前处于焦点,则选择元素。 |
:image 选择器 | 选择图像类型的所有元素。 |
:input 选择器 | 选择所有输入、文本区域、选择和按钮元素。 |
:password 选择器 | 选择密码类型的所有元素。 |
:radio 选择器 | 选择所有类型为 radio 的元素。 |
:reset 选择器 | 选择所有类型为 reset 的元素。 |
:selected 选择器 | 选择所有选定的元素。 |
:submit 选择器 | 选择提交类型的所有元素。 |
:text 选择器 | 选择所有文本类型的输入元素。 |
属性 jQuery 选择器
使用 jQuery 选择器的另一种方法是通过属性值选择 HTML 元素。
它可以是默认属性或者任何自定义属性。
属性值在选择器语法中通过括在[]
方括号中来表示,例如$("a[rel='nofollow']")
。
这些选择器将属性值视为单个字符串。
例如,$("a[rel='nofollow']")
将选择 <a href="example.html" rel="nofollow">Some text</a> 而不是 <a href="example .html" rel="nofollow otherValue">一些文字</a>。
语法/示例 | 描述 |
---|---|
[attributeName] | 选择具有指定属性的元素,具有任何值。 |
[attributeName = "value"] | 选择具有与特定值完全相等的值的指定属性的元素。 |
[attributeName != "value"] | 选择具有以给定字符串开头的值的指定属性的元素。 |
[attributeName ^= "value"] | 选择具有以给定字符串开头的值的指定属性的元素。 |
[attributeName $= "value"] | 选择具有以给定字符串结尾的值的指定属性的元素。比较区分大小写。 |
[attributeName ~= "value"] | 选择具有指定属性的元素,其值包含给定的单词,以空格分隔。 |
[attributeName *= "value"] | 选择具有包含给定子字符串的值的指定属性的元素。 |
[attributeName \|= "value"] | 选择具有指定属性且值等于给定字符串或者以该字符串开头后跟连字符 (-) 的元素。 |
[attributeName = "value"][attributeName2="value2"] | 匹配与所有指定属性过滤器相匹配的元素。 |
层次选择器
层次选择器允许我们根据 DOM 层次选择 HTML 元素。
这使我们能够通过仅根据 DOM 树中的父元素、子元素或者其他元素来选择元素,从而编写更能感知内容的动态代码。
语法/示例 | 描述 |
---|---|
Child Selector ("parent > child") | 选择由“parent”指定的元素的“child”指定的所有直接子元素。 |
Descendant Selector ("ancestor descendant") | 选择作为给定祖先的后代的所有元素。 |
Next Adjacent Selector ("prev + next") | 选择与“next”匹配且紧跟在同级“prev”之后的所有下一个元素。 |
Next Siblings Selector ("prev ~ siblings") | 选择“prev”元素之后的所有同级元素,具有相同的父元素,并匹配过滤“同级”选择器。 |
jQuery 语句通常遵循以下语法模式:
$(selector).methodName();
selector
是一个字符串表达式,用于标识将被收集到匹配集合中以进行操作的 DOM 元素集。
jQuery 选择器返回 jQuery 对象,而不是从 javascript 选择器返回的 DOM 对象。
过滤选择器
通常,我们需要将 jQuery 选择器细化为更具体的子集。
实现这一点的一种方法是使用过滤选择器。
过滤选择器在选择器语句的末尾添加一个过滤器,用于限制选择器返回的结果。
语法/示例 | 描述 |
---|---|
:animated 选择器 | 选择运行选择器时正在播放动画的所有元素。 |
:eq() 选择器 | 选择匹配集合中索引 n 处的元素。 |
:even 选择器 | 选择偶数元素,零索引。 |
:odd 选择器 | 选择零索引的奇数元素。 |
:first 选择器 | 选择第一个匹配的元素。 |
:last 选择器 | 选择最后一个匹配的元素。 |
:focus 选择器 | 如果当前处于焦点,则选择元素。 |
:gt() 选择器 | 选择匹配集合中索引大于索引的所有元素。 |
:lt() 选择器 | 选择匹配集合中索引小于索引的所有元素。 |
:header 选择器 | 选择所有作为标题的元素,如 h1. h2. h3 等。 |
:lang() 选择器 | 选择指定语言的所有元素。 |
:not() 选择器 | 选择与给定选择器不匹配的所有元素。 |
:root 选择器 | 选择作为文档根的元素。 |
:target 选择器 | 选择由文档 URI 的片段标识符指示的目标元素。 |
基本的 jQuery 选择器
基本选择器关注 HTML 元素的 id 属性、class 属性和标签名称。
语法/示例 | 描述 |
---|---|
All Selector ("*") | 选择页面中的所有元素 |
Class Selector (".className") | 选择具有给定类的所有元素。 |
Element Selector ("element") | 选择具有给定标签名称的所有元素。 |
ID Selector ("#id") | 选择具有给定 id 属性的单个元素。 |
Multiple Selector ("selector1, selector2, selectorN") | 选择所有指定选择器的组合结果。 |
内容选择器
内容选择器允许我们根据 HTML 元素内的内容选择 HTML 元素。
语法/示例 | 描述 |
---|---|
:contains() | 选择包含指定文本的所有元素。 |
:empty | 选择所有没有子元素的元素(包括文本节点)。 |
:has() | 选择包含至少一个与指定选择器匹配的元素的元素。 |
:parent | :empty 的倒数。选择具有至少一个子节点(元素或者文本)的所有元素。 |