既然操作html中的对象,自然有一个事情是无法避免的,那就是元素选择器。
原生的JS获取元素的方式很多,还有兼容问题。但是jQuery做了封装,根据封装的方法进行调用即可,不用考虑其它问题。
jQuery 选择器允许您对 HTML 元素组或单个元素进行操作。jQuery 选择器基于元素的 id、类、类型、属性、属性值等"查找"(或选择)HTML 元素。 它基于已经存在的 CSS 选择器,除此之外,它还有一些自定义的选择器。
$("选择器") //里面选择器直接写CSS选择器即可(但也不是全部而是常用的), 毕竟它的常用方法是基于CSS选择器
看一下官网的选择器分类
常用的选择器方法:
基础选择器
选择器名称 | 用法(例子演示) | 描述 |
id选择器 | $(“#id”) | 获取指定的id的元素 |
类选择器 | $(“.class”) | 获取指定的class的元素 |
标签选择器 | $(“标签”) | 获取指定的标签的元素 |
全选选择器 | $("*) | 获取所有的元素 |
通过this获得html标签 | $(this) | 获取当前的html元素 |
属性选择器 | $(“[href]”) | 选取带有 href 属性的元素。还可以如此用 (“a[target!=‘_blank’]”) : 选取所有 target 属性值不等于 “_blank” 的 元素 |
并集选择器 | $(“div,p,li”) | 获得div p li 的元素标签集合 |
并集选择器 | $(“p.intro”) | 选取 class 为 intro 的 元素 |
伪元素或伪标签选择器
当然可以使用伪属性或者伪标签。
伪元素或伪属性 | 语法 | 描述 |
:first | $(“p:first”) | 选取第一个 元素 |
:last | $(“p:last”) | 选取最后一个 元素 |
:not(selector) | $(“input:not(:checked)”) | 选取input 不带有checked属性的元素 |
:even | $(“tr:even”) | 选取偶数位置的 |
:odd | $(“tr:odd”) | 选取奇数位置的 |
:eq(index) | $(“tr:eq(1)”) | 匹配一个给定索引值的元素,选取t标签第二个元素 (从0开始) |
:gt(index) | $(“tr:gt(0)”) | 选取t标签第一个元素后面的元素 (从0开始,所以大于0) |
$(“:button”) | 选取所有 type=“button” 的 元素 和 元素 |
元素 元素
层级选择器
当然还可以使用层级选择器:
选择器名字 | 用法(例子) | 描述 |
子代选择器 | $(“div >p”) | 使用>获得子级的元素, 不会获得孙子级以及更内层的元素,例子:获取div标签内嵌的第一层标签为p的元素 |
后代选择器 | $(“div p”) | 使用空格,是后代选择器就是获得div中无论内嵌的任何层p元素 |
紧邻选择器 | $(“#id +p”) | 使用+号, 匹配所有 紧接在 id为di 元素后的 p 元素。(好好理解这句话,不是所id后面所有的p标签哦,而复合id后面紧邻p的所有o标签) |
兄弟选择器 | $(“#id ~ p”) | 使用~号,匹配 id为id 元素之后的所有 p 元素。 |
其实选择器太多了,很方便我们使用,但是我只是聊一下常用的方法。如果需要更多可能需要翻看官网文档了。