jQuery 常用API

1.jQuery 选择器
1.1 jQuery 基础选择器
$(“选择器”) // 里面选择器直接写 CSS 选择器即可,但是要加引号

在这里插入图片描述

1.2 jQuery 层级选择器

在这里插入图片描述

1.2.1 jQuery 设置样式
$('div').css('属性', '值')
1.3 隐式迭代(重要)

遍历内部 DOM 元素(伪数组形式存储)的过程就叫做隐式迭代。
简单理解:给匹配到的所有元素进行循环遍历,执行相应的方法,而不用我们再进行循环,简化我们的操作,方便我们调用。

// 1. 获取四个div元素 
        console.log($("div"));
        // 2. 给四个div设置背景颜色为粉色 jquery对象不能使用style
        $("div").css("background", "pink");
        // 3. 隐式迭代就是把匹配的所有元素内部进行遍历循环,给每一个元素添加css这个方法
        $("ul li").css("color", "red");
1.4 jQuery 筛选选择器

在这里插入图片描述

1.5 jQuery 筛选方法(重点)

在这里插入图片描述
重点记住: parent() children() find() siblings() eq()

1.6 jQuery 里面的排他思想

想要多选一的效果,排他思想:当前元素设置样式,其余的兄弟元素清除样式。

$(this).css(“color”,”red”);
$(this).siblings(). css(“color”,””);

案例:
淘宝服饰精品案例

1.7 链式编程
$(this).css('color', 'red').sibling().css('color', '');

要注意是给同一个对象添加操作

2. jQuery 样式操作
2.1 操作 css 方法

可以用来修改简单样式,也可以用来修改类
方法1:

$("div").css("width", "300px");//只写属性名,则是返回属性值

方法2:以对象的方式,属性名和值用冒号隔开

 $("div").css({ width: 400, 
                backgroundColor: "red"//如果是复合属性则必须采取驼峰命名法,如果值不是数字,则需要加引号
            })
2.2 设置类样式方法

添加 、移除 、切换类

$(“div”).addClass(''current'');
$(“div”).removeClass(''current'');
$(“div”).toggleClass(''current'');

案例:tab 栏切换
类操作与className区别:

  1. 原生 JS 中 className 会覆盖元素原先里面的类名。
  2. jQuery 里面类操作只是对指定类进行操作,不影响原先的类名。
3. jQuery 效果
3.1 显示隐藏效果

显示、隐藏、切换语法规范

show([speed,[easing],[fn]])
hide([speed,[easing],[fn]])
toggle([speed,[easing],[fn]])
3.2 滑动效果

上滑、 下滑、切换语法规范

slideUp([speed,[easing],[fn]])
slideDown([speed,[easing],[fn]])
slideToggle([speed,[easing],[fn]])

(1)参数可以省略
(2)speed:速度(“slow”,“normal”, “fast”),或者用毫秒表示
(3)easing:指定切换效果(“swing”,“linear”)
(4)fn:回调函数

3.3 事件切换
hover([over,]out)

(1)over:鼠标移到元素上要触发的函数(相当于mouseenter) (2)out:鼠标移出元素要触发的函数(相当于mouseleave) (3)如果只写一个函数,则鼠标经过和离开都会触发它

3.4 动画队列及其停止排队方法

动画触发就会执行,多次触发造成动画排队执行

stop() // 写到动画或者效果的前面 相当于停止结束上一次的动画
3.5 淡入淡出效果

淡入、淡出、 淡入淡出切换语法规范

fadeIn([speed,[easing],[fn]])
fadeOut([speed,[easing],[fn]])
fadeToggle([speed,opacity,[easing],[fn]])

渐进方式调整到指定的不透明度

fadeTo([[speed],opacity,[easing],[fn]])

opacity 透明度必须写,取值 0~1 之间

3.6 自定义动画 animate
$("元素").stop().animate(params,[speed],[easing],[fn])

params: 想要更改的样式属性,以对象形式传递,必须写。
animate只对元素做动画,不能是文档
案例:王者荣耀手风琴效果

4. jQuery 属性操作
4.1 设置或获取元素固有属性值 prop()
prop(''属性'', ''属性值'')//不带属性值就是获取
4.2 设置或获取元素自定义属性值 attr()
attr(''属性'', ''属性值'')//不带属性值就是获取

自定义属性如给 div 添加 index =“1”,该方法也可以获取 H5 自定义属性

4.3 数据缓存 data()

在指定的元素上存取数据,不会修改 DOM 元素结构
页面刷新,之前存放的数据都将被移除

data(''name'',''value'')//不带value属性就是获取

读取 HTML5 自定义属性 data-index ,得到的是数字型

案例:购物车案例模块-全选

5. jQuery 内容文本值

对元素的内容还有表单进行操作

1.普通元素内容 html()( 相当于原生inner HTML)

html(''内容'')//不带内容就是获取

2.普通元素文本内容 text() (相当与原生 innerText)

text(''文本内容'')//不带内容就是获取

3.表单的值 val()( 相当于原生value)

val(''内容'') // 不带内容就是获取

案例:购物车案例模块-增减商品数量-修改商品小计

5.1 返回指定祖先元素

描述:找到每个span的所有是p元素的祖先元素。

$("span").parents("p")
6. jQuery 元素操作

主要是遍历、创建、添加、删除元素操作

6.1 遍历元素

语法1:

 var arr = ["red", "green", "blue"];
 $("div").each(function (index, domEle) { 
    $(domEle).css("color", arr[index]);
 }

语法2:

$.each(object,function (index, element) { xxx; }

1.each() 方法遍历匹配的每一个元素。主要用DOM处理
2.$.each()方法可用于遍历任何对象。主要用于数据处理,比如数组,对象
3. index 是每个元素的索引号; element 遍历内容;demEle 是每个DOM元素对象,需要给这个dom元素转换为jquery对象 $(domEle)

6.2 创建元素
 var li = $(''<li></li>'');
6.3 添加元素

1.内部添加

element.prepend(''内容'')//放入匹配元素内部最前面
element.append(''内容'') //放入匹配元素内部最后面

2.外部添加

element.before(''内容'') // 把内容放入目标元素前面
element.after(''内容'')  // 把内容放入目标元素后面

① 内部添加元素,生成之后,它们是父子关系。
② 外部添加元素,生成之后,他们是兄弟关系。

6.4 删除元素
element.remove() // 删除匹配的元素(本身)
element.empty() // 删除匹配的元素集合中所有的子节点
element.html('''') // 清空匹配的元素内容,也可设置内容

案例:购物车案例模块-删除商品模块-选中商品添加背景

7. jQuery 尺寸、位置操作
7.1 jQuery 尺寸

在这里插入图片描述
以上参数为空,则是获取相应值,参数可以不带单位

7.2 jQuery 位置

1.offset() 设置或获取元素偏移,元素属性可以以对象的方式修改
2.position() 获取元素偏移,只能获取,不能修改
① offset() 方法设置或返回被选元素相对于文档的偏移坐标,跟父级没有关系。
②position() 方法相对于带有定位的父级偏移坐标,,如果父级都没有定位,则以文档为准。
② 有2个属性 left、top。
③ offset({ top: 10, left: 30 });position() 方法只能获取。

3.scrollTop()/scrollLeft() 设置或获取元素被卷去的头部和左侧
①不跟参数是获取,参数为不带单位的数字则是设置被卷去的头部
②也可设置页面打开时直接跳转

案例:带有动画的返回顶部
①animate动画函数带有scrollTop()属性,可以设置位置
②元素做动画,所以要转换为Dom元素

 $(".back").click(function() {
                // $(document).scrollTop(0);
                $("body, html").stop().animate({
                    scrollTop: 0
                });
// 不能是文档而是 html和body元素做动画

案例:品优购导航栏

8.节流阀 互斥锁

思想:
var flag = true
当我们点击了小li 此时不需要执行 页面滚动事件里面的 li 的背景选择,在点击事件中将flag值改为false,在动画完成之后滚动到相应位置再将flag的值改为true。在进行滚动事件时,对flag的值进项判断,来改变类。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值