文章目录
1. jQuery选择器
1.1 jQuery基础选择器
名称 | 用法 | 描述 |
---|---|---|
ID 选择器 | $(“#id”) | 获取指定 ID 元素 |
全选选择器 | $(“*”) | 匹配所有元素 |
类选择器 | $(“.class”) | 获取同一类 class 的元素 |
标签选择器 | $(“div”) | 获取同一类标签的所有元素 |
并集选择器 | $(“div,p,li”) | 选取多个元素 |
交集选择器 | $(“li.current”) | 交集元素 |
1.2 jQuery 层级选择器
名称 | 用法 | 描述 |
---|---|---|
子代选择器 | $(“ul>li”) | 使用 > 符号,获取子一代层级元素 |
后代选择器 | $(“ul li”) | 使用空格,后代选择器,获取 ul 下的所有 li 元素 |
1.3 隐式迭代
- 遍历内部 DOM 元素的过程
- 将匹配到的所有元素进行循环遍历
1.4 jQuery 筛选选择器
语法 | 用法 | 描述 |
---|---|---|
:list | $(“li:list”) | 获取第一个 li 元素 |
:last | $(“li:last”) | 获取最后一个 li 元素 |
:eq(index) | $(“li:eq(2)”) | 获取第二个 li 元素,索引号从0开始 |
:odd | $(“li:odd”) | 获取索引号为奇数的 li 元素 |
:even | $(“li:even”) | 获取索引号为偶数的 li 元素 |
1.5 jQuery 筛选方法
语法 | 用法 | 描述 |
---|---|---|
parent() | $(“li”).parent() | 查找 li 父级元素 |
children(selector) | $(“ul”).children(“li”) | 相当于$(“ul>li”),查找 ul 子一代 li 元素 |
find(selector) | $(“ul”).find(“li”) | 相当于$(“ul li”),查找 ul 后代所有 li 元素 |
siblings(selector) | $(“.class”).siblings(“.class2”) | 查找兄弟节点,不包括自己 |
nextAll([expr]) | $(“.class”).nextAll() | 查找当前元素之后的所有同级元素 |
prevtAll([expr]) | $(“.class”).prevAll() | 查找当前元素之前的所有同级元素 |
hasClass(class) | $(“div”).hasClass(“.class”) | 检查当前元素是否含有 .class 类,如果有就返回 true |
eq(index) | $(“li”).eq(2) | 相当于$(“li:eq(2)”),索引从0开始 |
2. jQuery 样式操作
2.1 操作 css 方法
语法 | 用法 | 描述 |
---|---|---|
css(name) | $(this).css(“color”); | 返回属性值 |
css(name , value) | $(this).css(“color”,“red”); | 设置或修改样式,数字可以不加引号和单位 |
css(name : value , name : value ) | $(this).css(“color”:“red”,“font-size”:“20px”) | 参数以对象形式,设置多组样式 |
2.2 设置类样式方法
语法 | 用法 | 描述 |
---|---|---|
addClass() | $(“div”).addClass(“class”) | 添加类 |
removeClass() | $(“div”).removeClass(“class”) | 移除类 |
toggleClass() | $(“div”).toggleClass(“class”) | 切换类 |
2.3 类操作与 className 区别
- 原生 js 中 className 会覆盖元素原来里面的类名
- jQuery 里面类操作对指定类进行操作,不影响原来的类名
3. jQuery 效果
参数可以省略
- speed:速度(slow,normal,fast 或者毫秒值)
- easing:指定切换效果(swing(默认),linear)
- opacity:透明度(0-1之间)
- fn:回调函数
3.1. 显示隐藏效果
语法 | 用法 | 描述 |
---|---|---|
show() | $(“div”).show(speed,easing,fn); | 显示 |
hide() | $(“div”).hide(speed,easing,fn); | 隐藏 |
toggle() | $(“div”).toggle(speed,easing,fn); | 切换 |
3.2. 淡入淡出效果
语法 | 用法 | 描述 |
---|---|---|
fadeIn() | $(“div”).fadeIn(speed,easing,fn); | 淡入 |
fadeOut() | $(“div”).fadeOut(speed,easing,fn); | 淡出 |
fadeIToggle() | $(“div”).fadeIToggle(speed,easing,fn); | 切换 |
fadeTo | $(“div”).fadeTo(speed,opacity,easing,fn); | 渐变切换 |
3.3 滑动效果
语法 | 用法 | 描述 |
---|---|---|
slideDown() | $(“div”).slideDown(speed,easing,fn); | 下滑 |
slideUp() | $(“div”).slideUp(speed,easing,fn); | 上滑 |
slideToggle() | $(“div”).slideToggle(speed,easing,fn); | 切换 |
3.4 自定义动画
- params:动画 css 属性,对象形式(必须写)
语法 | 用法 | 描述 |
---|---|---|
animate() | $(“div”).slideDown(params,speed,easing,fn); | 自定义动画 |
3.5 事件切换
- over:鼠标移动到元素上触发的函数(相当于 mouseenter)
- out:鼠标移出元素触发的函数(相当于 mouseleave)
语法 | 用法 | 描述 |
---|---|---|
hover(over,out) | $(“div”).hover(fn1,fn2); | 鼠标事件切换 |
3.6 停止动画队列
语法 | 用法 | 描述 |
---|---|---|
stop() | $(“div”).stop() | 防止动画效果多次触发,将 stop() 写到动画效果前面会停止上一次动画 |
4. jQuery 属性操作
4.1 设置和获取元素固有属性
语法 | 用法 | 描述 |
---|---|---|
prop(name) | $(“a”).prop(“href”) | 获取属性 |
prop(name,value) | $(“input”).prop(“checked”,true) | 设置属性 |
4.2 设置和获取元素自定义属性值
语法 | 用法 | 描述 |
---|---|---|
attr(name) | $(“img”).attr(“src”) | 获取属性 |
attr(name,value) | $(“img”).attr(“width”,“200”) | 设置属性 |
4.3 数据缓存 data()
语法 | 用法 | 描述 |
---|---|---|
data(name) | $(“div”).attr(“data-temp”) | 获取属性 |
data(name,value) | $(“div”).attr(“data-temp”,1) | 设置属性 |
5. jQuery 内容文本值
5.1 普通元素内容 html()
语法 | 用法 | 描述 |
---|---|---|
html() | $(“p”).html() | 获取元素的内容 |
html(value) | $(“p”).html(“hello”) | 设置元素的内容 |
5.2 普通元素文本内容 text()
语法 | 用法 | 描述 |
---|---|---|
text() | $(“p”).text() | 获取元素的文本内容 |
text(value) | $(“p”).text(“hello”) | 设置元素的文本内容 |
5.3 文本框(表单)值 val()
语法 | 用法 | 描述 |
---|---|---|
val() | $(“input”).val() | 获取元素的文本框值 |
val(value) | $(“input”).val(“hello”) | 设置元素的文本框值 |
6. jQuery 元素操作
6.1 遍历元素
- index:每个元素的索引号
- domEle:每个 DOM 元素对象
- element:遍历的内容(值)
语法 | 用法 |
---|---|
each() | $(“div”).each(function (index,domEle){}) |
$.each() | $.each(object,function (index,element){}) |
6.2 创建元素
$("<li>hello<li>");
6.3 添加元素
- 内部添加(添加完是父子关系)
语法 | 用法 | 描述 |
---|---|---|
append(value) | $(“p”).append(value): | 将内容添加到匹配元素(p)内部的最后面 |
prepend(value) | $(“p”).prepend(value): | 将内容添加到匹配元素(p)内部的最前面 |
- 外部添加(添加完是兄弟关系)
语法 | 用法 | 描述 |
---|---|---|
after(value) | $(“p”).after(value): | 将内容添加到目标元素(p)的后面 |
before(value) | $(“p”).before(value): | 将内容添加到目标元素(p)的前面 |
6.4 删除元素
语法 | 用法 | 描述 |
---|---|---|
remove() | $(“p”).remove() | 删除匹配的元素包括自己 |
remove(“.class”) | $(“p”).remove(“.class”) | 删除匹配元素中含有 class 类的元素 |
empty() | $(“p”).empty() | 删除匹配的元素集合中所有的子节点 |
html(“”) | $(“p”).html(“”) | 清空匹配的元素内容(将内容改为空) |
7. jQuery 尺寸和位置操作
7.1 jQuery 尺寸
- 参数为空时,获取相应的值(返回的是数字类型)
- 参数为数字时,修改相应的值
- 参数不必写单位
语法 | 用法 | 描述 |
---|---|---|
width() / height() | $(“p”).width() / $(“p”).height() | 取得匹配元素的宽度值 / 高度值,只算 width / height |
innerWidth() / innerHeight() | $(“p”).innerWidth() / $(“p”).innerHeight() | 取得匹配元素的宽度值 / 高度值,包含 padding |
outerWidth() / outerHeight() | $(“p”).outerWidth() / $(“p”).outerHeight() | 取得匹配元素的宽度值 / 高度值,包含 padding,border |
outerWidth(options) / outerHeight(options) | $(“p”).outerWidth(true) / $(“p”).outerHeight(true) | 取得匹配元素的宽度值 / 高度值,包含 padding,border,margin,options为 true 时,计算边距在内 |
7.2 jQuery 位置
语法 | 用法 | 描述 |
---|---|---|
offset() | $(“div”).offset() | 获取匹配元素相对于文档的偏移坐标 |
offset(value) | $(“div”).offset({top:10,left:10}) | 设置匹配元素相对于文档的偏移坐标 |
position() | $(“div”).position() | 获取匹配元素相对于带有定位的父级元素的偏移坐标,不可以加参数 |
scrollTop() | $(“div”).scrollTop() | 获取匹配元素相对顶部的偏移(元素超出上边界的高度) |
scrollTop(value) | $(“div”).scrollTop(200) | 设置匹配元素相对顶部的偏移(元素超出上边界的高度) |
scrollLeft() | $(“div”).scrollLeft() | 获取匹配元素相对左侧的偏移(元素超出左边界的宽度) |
scrollLeft(value) | $(“div”).scrollLeft(200) | 设置匹配元素相对左侧的偏移(元素超出左边界的宽度) |