jQuery的选择器

选择器是 jQuery 的根基, 在 jQuery 中, 对事件处理, 遍历 DOM 和 Ajax 操作都依赖于选择器
jQuery 选择器的优点:
简洁的写法
在这里插入图片描述

完善的事件处理机制
在这里插入图片描述

基本选择器

基本选择器是 jQuery 中最常用的选择器, 也是最简单的选择器, 它通过元素 id, class 和标记名来查找 DOM 元素

id选择器:#id
类选择器:.class
标签名选择器:
* :匹配所有元素
在这里插入图片描述
示例:
改变 id 为 one 的元素的背景色为 红色

$("#one").css("backgroundColor","red");

改变元素名为 <p> 的所有元素的背景色为 # bbffaa,字体颜色为红色

$("p").css({color:"red",backgroundColor:"#bbffaa"});

改变第一个<p>元素的背景色为红色

$("p").eq(0).css("backgroundColor","red");

改变所有<h1>元素和 id 为 one 的元素的背景色为 # bbffaa

$("h1,#one").css("backgroundColor","#bbffaa");

层次选择器

如果想通过 DOM 元素之间的层次关系来获取特定元素, 例如后代元素, 子元素, 相邻元素, 兄弟元素等, 则需要使用层次选择器

在这里插入图片描述
注意: (“prev ~ div”) 选择器只能选择 “# prev ” 元素后面的同辈元素; 而 jQuery 中的方法 siblings() 与前后位置无关, 只要是同辈节点就可以选取

示例:

改变 <body> 内所有 <div> 的背景色为 # bbffaa

$(“body div").css("backgroundColor","#bbffaa");

改变 <body> 内子 <div> 的背景色为 # bbffaa

$(“body>div").css("backgroundColor","#bbffaa");

改变 id 为 one 的下一个 <div> 的背景色为 # bbffaa

$("#one+div").css("backgroundColor","#bbffaa");

改变 id 为 two 的元素后面的所有兄弟

的元素的背景色为 # bbffaa

$("#two~div").css("backgroundColor","#bbffaa");

改变 id 为 two 的元素所有 <p> 兄弟元素的背景色为 # bbffaa

$("#two"). siblings("p") .css("backgroundColor","#bbffaa");

过滤选择器

过滤选择器主要是通过特定的过滤规则来筛选出所需的 DOM 元素, 该选择器都以 “:” 开头
按照不同的过滤规则, 过滤选择器又可分为基本过滤, 内容过滤, 可见性过滤, 属性过滤, 子元素过滤和表单对象属性过滤选择器.

基本过滤选择器

Element:first :选取第一个元素
Element:last : 选取最后一个元素
Element:not(selector):去除所有与给定选择器匹配的元素
Element:even :选取所有索引为偶数的元素,索引从0开始
Element:odd :选取所有索引为奇数的元素,索引从0开始
Element:eq(index):选取索引等于index的元素,索引从0开始
Element:gt(index):选取索引大于index的元素,索引从0开始
Element:lt(index) :选取索引小于index的元素,索引从0开始
:header :选取索引的标题标签
在这里插入图片描述
示例:
改变第一个 div 元素的背景色为 # bbffaa

$("div:first").css("backgroundColor","#bbffaa");

改变id不为 one 的所有p元素的背景色为 # bbffaa

$("p:not('#one')").css("backgroundColor","#bbffaa");

改变索引值为偶数的 tr元素的背景色为 # bbffaa

$("tr:even").css("backgroundColor","#bbffaa");

改变索引值为大于 3 且为奇数的 p元素的背景色为 # bbffaa

$("p:gt(3):odd").css("backgroundColor","#bbffaa");

改变所有的标题元素的背景色为 # bbffaa

$(":header").css("backgroundColor","#bbffaa");

内容过滤选择器

内容过滤选择器的过滤规则主要体现在它所包含的子元素和文本内容上
在这里插入图片描述

示例:
改变含有文本 ‘di’ 的 p元素的背景色为 # bbffaa

$("p:contains(di)")

改变含有 class 为 mini 元素的 p元素的背景色为 # bbffaa

$("p:has(.mini)")

可见性过滤选择器

可见性过滤选择器是根据元素的可见和不可见状态来选择相应的元素

在这里插入图片描述
可见选择器 :hidden 不仅包含样式属性 display 为 none 的元素, 也包含文本隐藏域 ()和 visible:hidden 之类的元素

属性过滤选择器

属性过滤选择器的过滤规则是通过元素的属性来获取相应的元素

Element[attribute]:选取拥有此属性的选择器
Element[attribute=value]:选取指定属性值为value的元素
Element[attribute!=value]:选取指定属性值不等于value的元素
Element[attribute^=value]:选取指定属性值以value开始的元素
Element[attribute$=value]:选取指定属性值以value结束的元素
Element[attribute*=value]:选取指定属性值中含有value的元素
在这里插入图片描述

表单选择器

:input 选择由input生成的表单控件
:text 选择单行文本框
:password 选择密码框
:radio 单选按钮
:checkbox 复选按钮
在这里插入图片描述

子元素选择器

:nth-child(index/even/odd) -->选取每个父元素下的索引值为偶(奇)数的子元素

  • (1) :nth-child(even/odd): 能选取每个父元素下的索引值为偶(奇)数的元素

  • (2):nth-child(2): 能选取每个父元素下的索引值为 2 的元素

  • (3):nth-child(3n): 能选取每个父元素下的索引值是 3 的倍数 的元素

  • (4):nth-child(3n + 1): 能选取每个父元素下的索引值是 3n + 1的元素

:first-child --> 选择每个父元素下的第一个子元素
:last-child --> 选择每个父元素下的最后一个子元素
在这里插入图片描述

表单对象属性过滤选择器

此选择器主要对所选择的表单元素进行过滤

在这里插入图片描述

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐