选择器
筛选具有相似特征的元素(标签)
基本选择器
-
标签选择器(元素选择器)
语法:$("html标签名")
获得所有匹配标签名称的元素 -
id选择器
语法:$("#id的属性值")
获得与指定id属性值匹配的元素 -
类选择器
语法:$(".class的属性值")
获得与指定的class属性值匹配的元素 -
并集选择器
语法:$("选择器1,选择器2....")
获取多个选择器选中的所有元素
层级选择器
-
后代(子孙)选择器
语法:$("A B ")
选择A元素内部的所有B元素 -
子选择器
语法:$("A > B")
选择A元素内部的所有B子元素
属性选择器
A是元素/标签
-
属性名称选择器
语法:$("A[属性名]")
包含指定属性的选择器 -
属性–值选择器
语法:$("A[属性名='值']")
包含指定属性等于指定值的选择器
//" 属性title值等于test的div元素背景色为红色" id="b2"/>
$("#b2").click(function () {
$("div[title='test']").css("backgroundColor","pink");
});
- 复合属性选择器
语法:$("A[属性名='值'][]...")
包含多个属性条件的选择器
过滤选择器
- 首元素选择器
语法::first
获得选择的元素中的第一个元素
$(function () {
// 改变第一个 div 元素的背景色为 红色 id="b1"
$("#b1").click(function () {
$("div:first").css("backgroundColor","pink");
});
});
:(冒号)前后是连在一起的,不能加空格。前加空格是后代选择器,后加空格语法不对
-
尾元素选择器
语法::last
获得选择的元素中的最后一个元素 -
非元素选择器
语法::not(selector)
不包括指定内容的元素 -
偶数选择器
语法::even
偶数,从 0 开始计数 -
奇数选择器
语法::odd
奇数,从 0 开始计数 -
等于索引选择器
语法::eq(index)
指定索引元素 -
大于索引选择器
语法::gt(index)
大于指定索引元素。index>=0
?隔行换色
<script>
$(function () {
$("tr:gt(1):odd").css("backgroundColor", "pink");
$("tr:gt(1):even").css("backgroundColor", "white");
});
</script>
-
小于索引选择器
语法::lt(index)
小于指定索引元素 -
标题选择器
语法::header
获得标题(h1~h6)元素,固定写法
表单过滤选择器
-
可用元素选择器
语法::enabled
获得可用元素 -
不可用元素选择器
语法::disabled
获得不可用元素 -
选中选择器
语法::checked
获得单选/复选框选中的元素
?全选和全不选 -
选中选择器
语法::selected
获得下拉框选中
的元素
?左右列表移动
<script>
$(function () {
$("#toRight").click(function () {
$("#rightName").append($("#leftName > option:selected"));
});
$("#toLeft").click(function () {
$("#leftName").append($("#rightName > option:selected"));
});
</script>
DOM操作
内容操作
html()
:获取/设置元素的标签体内容
<a>`<font>内容</font>`</a>
text()
:获取/设置元素的标签体纯文本内容
<a><font>`内容`</font></a>
val()
:获取/设置元素的value属性值
属性操作
通用属性操作
attr()
: 获取/设置元素的属性
removeAttr()
:删除属性
prop()
:获取/设置元素的属性
removeProp()
:删除属性
attr和prop区别?
- 如果操作的是元素的固有属性,则建议使用prop
- 如果操作的是元素自定义的属性,则建议使用attr
- 大部分是操作固有属性,所以先用prop,不能操作再换attr
对class属性操作
addClass()
:添加class属性值
removeClass()
:删除class属性值
toggleClass()
:切换class属性
toggleClass(“one”):判断如果元素对象上存在class=“one”,则将属性值one删除掉。如果元素对象上不存在class=“one”,则添加
css()
CRUD操作
append(): 父元素将子元素追加到末尾
对象1.append(对象2)
: 将对象2添加到对象1元素内部,并且在末尾
prepend():父元素将子元素追加到开头
对象1.prepend(对象2)
:将对象2添加到对象1元素内部,并且在开头
appendTo()
对象1.appendTo(对象2)
:将对象1添加到对象2内部,并且在末尾
prependTo()
对象1.prependTo(对象2)
:将对象1添加到对象2内部,并且在开头
after():添加元素到元素后边
对象1.after(对象2)
: 将对象2添加到对象1后边。对象1和对象2是兄弟关系
before():添加元素到元素前边
对象1.before(对象2)
: 将对象2添加到对象1前边。对象1和对象2是兄弟关系
insertAfter()
对象1.insertAfter(对象2)
:将对象2添加到对象1后边。对象1和对象2是兄弟关系
insertBefore()
对象1.insertBefore(对象2)
: 将对象2添加到对象1前边。对象1和对象2是兄弟关系
remove():移除元素
对象.remove()
:将对象删除掉
empty():清空元素的所有后代元素。
对象.empty()
:将对象的后代元素全部清空,但是保留当前对象以及其属性节点