简述JQuery有几种选择器?
jQuery 提供了多种选择器,使得选择和操作 DOM 元素变得非常灵活和强大。这些选择器大体上可以分为以下几类:
1. 基本选择器
- 元素选择器:根据元素名称选择元素,如
$('div')
。 - ID 选择器:根据元素的 ID 选择单个元素,如
$('#myId')
。 - 类选择器:根据元素的类选择元素,如
$('.myClass')
。 - 通配符选择器:选择所有元素,如
$('*')
。
2. 层级选择器
- 后代选择器 (
空格
):选择某个元素下的后代元素,如$('div .myClass')
。 - 子选择器 (
>
):选择某个元素直接子元素,如$('div > .myClass')
。 - 相邻兄弟选择器 (
+
):选择紧接在某个元素后的兄弟元素,如$('#myId + .myClass')
。 - 通用兄弟选择器 (
~
):选择某个元素之后的所有兄弟元素,如$('#myId ~ .myClass')
。
3. 基本过滤选择器
- 首个元素选择器 (
:first
):选择第一个元素,如$('div:first')
。 - 最后一个元素选择器 (
:last
):选择最后一个元素,如$('div:last')
。 - 不包含选择器 (
:not(selector)
):排除匹配的元素,如$('div:not(.myClass)')
。 - 偶数/奇数选择器 (
:even
/:odd
):选择索引为偶数或奇数的元素,如$('div:even')
。
4. 内容过滤选择器
- 包含文本选择器 (
:contains(text)
):选择包含指定文本的元素,如$('div:contains("Hello")')
。 - 空元素选择器 (
:empty
):选择没有子元素的元素,如$('div:empty')
。 - 有子元素或文本的元素选择器 (
:parent
):选择有子元素或文本的元素。
5. 可见性过滤选择器
- 可见元素选择器 (
:visible
):选择所有可见的元素。 - 隐藏元素选择器 (
:hidden
):选择所有隐藏的元素。
6. 属性选择器
- 属性存在选择器 (
[attribute]
):选择具有指定属性的元素,如$('div[title]')
。 - 属性等于选择器 (
[attribute="value"]
):选择属性等于特定值的元素。 - 其他变体包括属性不等于、属性开始于、属性包含等选择器。
7. 表单对象选择器
- 表单选择器 (
:input
,:text
,:checkbox
,:submit
等):特定于表单的选择器,用于选择输入框、复选框、提交按钮等。
8. 表单过滤选择器
- 选中的选择器 (
:checked
):选择所有被选中的<input>
元素(复选框或单选按钮)。 - 选中的选择器 (
:selected
):选择所有被选中的<option>
元素。
这些选择器可以单独使用,也可以组合使用,提供了极大的灵活性来选择和操作 DOM 元素。通过熟练使用这些选择器,开发者可以高效地编写 jQuery 代码,实现复杂的页面功能。