jQuery 常用方法汇总学习使用

JQuery 1235 1 2022-04-11

jQuery 常用方法汇总学习使用

操作标签方法

1.HTML()方法

HTML()方法相当于原生JS中的innerHTML属性,用来获取/设置标签内部内容

语法:jQuery对象.html()

语法:jQuery对象.html('文本内容')


2.text()方法

text()方法相当于原生JS中的innerText属性,用来获取/设置标签内部文字

语法:jQuery对象.text()

语法:jQuery对象.text('文本内容')


3.val()方法

val()方法相当于原生JS中的value属性,用来获取/设置表单元素内容

语法:jQuery对象.val()

语法:jQuery对象.val('文本内容')


4.attr()方法

用来获取/设置标签的属性值

语法:jQuery对象.attr(name,value)

语法:jquery对象.attr(name)


5.removeAttr()方法

移除标签的属性

语法:removeAttr(name)


6.prop()方法

直接操作的就是布尔值

针对:selected、checked、disabled等表单元素的属性。此类属性的属性值与属性名相同

语法:$('input').prop('属性名')

语法:$('input').prop('属性名',值)


操作样式方法

css()方法

jQuery对象有一个css()方法,用于调用css属性值/更改css属性值

语法:jQuery对象.css(name,value)

参数1:字符串格式的css样式属性名

参数2:设置/更改的属性值


操作类名方法

jQuery中的类名控制方法,只会操作指定的类名,不会影响其他类名

1.addClass()添加类名

语法:jQuery对象.addClass('类名')

参数:字符串格式的类名


2.removeClass()移除类名

删除指定的类名

语法:jQuery对象.removeClass()

参数:字符串格式的类名,不传参数,表示删除所有的类名


3.toggleClass()类名切换

这个类名存在,会移除该类名。否则添加该类名

语法:jQuery对象.toggleClass('类名')


4.hasClass()检测类名是否存在

语法:jQuery对象.hasClass(‘类名’)

返回值:true、false


jQuery常用事件方法

jQuery对象封装了一系列的事件方法

点击事件:click()方法


1.mouseenter()方法

鼠标进入一个元素触发的事件


2.mouseleave()方法

鼠标离开一个元素触发事件

注意:mouseenter和mouseleave没有事件冒泡

在使用时替换mouseover和mouseout更加合适


3.hover()方法

hover事件相当于将mouseenter和mouseleave事件进行了合写

参数:有两个参数,第一个参数是鼠标移上执行的事件函数,第二个参数是鼠标离开执行事件函数


jQuery关系查找方法

1.$(this)自己

在原生的DOM操作中,事件函数内部有一个this关键字指向的就是触发事件的事件源,在jQuery中将this关键字传递给$()方法,得到就是指向自己的jQuery对象,可以使用JQ方法


2.parent()父级

jQuery对象都有一个parent()方法,得到的是自己的父级


3.children()子级

jQuery对象内部有一个children()方法,可以得到自己的所有子级元素组成的jQuery对象

children()可以传参数:参数是字符串格式的选择器,在选中所有子级的情况下,保留满足选择器的部分,进行了二次选择


4.siblings()兄弟

jQuery对象通过调用siblings()方法可以得到除了自己以外的所有同级元素(兄弟)组成jQuery对象,找到的只能是亲的兄弟,不能是叔叔家的兄弟得到jQuery对象可以继续使用JQ的方法和属性。


链式调用

jQuery对象调用任何方法(除了节点关系方法)执行完后,方法都会有一个返回值,返回值就是jQuery对象自己,这个现象给我们提供了便利,可以对执行结果继续打点调用JQ的方法和属性

其他节点关系方法

find()后代元素

jQuery对象可以利用find()方法,传递一个参数,参数部分规定的选择器


兄弟元素

紧邻的兄弟元素方法

next()下一个兄弟

prev()前一个兄弟


多选方法

nextAll()后面所有的兄弟

prevAll()前面所有兄弟


parents()祖先级

通过该方法得到的是指定对象的包含body在内的所有祖先级元素组成的jQuery对象


jQ 排序和动画

1.eq()方法,大排序

jQuery中获得的对象,内部包含选择一组原生JS对象,在jQuery对象中会进行一个大排序,这个排序与原来的HTML结构没有关系

eq()方法在jQuery对象中通过下标获取某个对象,下标是jQuery对象中的大的排序的下标


2.index()方法

jQuery对象调用index()方法时,得到的是它自己在HTML结构中的兄弟的下标位置。和jQuery大排序没有关系

index()方法获取下标时,排序跟新生成的jQuery对象无关

依赖于自身元素在父级中同级元素之间的位置


3.排他方法

jQuery中可以让this特殊设置,让兄弟siblings设置成默认


4.each()方法

jQuery对象进行的操作都是批量操作,批量操作只能执行一些简单的效果

参数是一个函数

作用:就是对jQuery对象中的元素每一个都执行函数内部的操作

each方法的基本原理就是for循环,从对象的下标为0的项一直便历到最后一项,然后对每一项进行操作


jQuery入口函数

入口函数

1.原生的window.onload

onload事件在加载时,指的是页面中所有的资源【DOM树、音频、视频、图片等】加载完毕后,才能触发


2.jQuery中的入口函数

仅仅需要等待页面中DOM树加载完毕就可以执行了

在一个页面中可以书写多个jQuery的入口函数,执行顺序按照前后加载顺序执行

语法1:

$(document).ready(function(){

  //获取元素

})


jQuery中切换效果的方法

显示隐藏方法

1.hide():元素隐藏,隐藏的前提必须是元素display:block

2.show():元素显示,显示的前提必须是元素display:none

3.toggle():在元素隐藏和显示之间进行切换

这三个方法可以设置元素的显示和隐藏效果,在过程中还可以出现过渡动画

show、normal、fast

如果不传参数:直接显示和隐藏,没有过渡动画


滑动显示隐藏

1.slideDown():滑动显示(方向不一定)

2.slideUp():滑动隐藏

3.slideToggle():滑动切换

让元素在display属性的block和none之间进行切换


谈入谈出

1.fadeln():谈入,透明度逐渐增大最终显示

2.fadeOut():谈出,透明度逐渐降低最终隐藏

3.fadeToggle():切换效果

4.fadeTo():谈入/谈出到某个指定的透明度

动画效果,执行的是透明度动画。也是在display属性的block和none之间切换


jQuery动画方法

animate()动画方法

作用:执行CSS属性集的自定义动画

语法:$(selector).animate(style,speed,easing,callback)

参数1:css的属性名和运动结束位置的属性值的集合

参数2:可选,规定动画的速度,默认是“noemal”。其他值 slow、normal、fast,数字格式,单位为毫秒

参数3:可选,规定在不同的动画点中设置动画速度的easing函数,值包含swing和linear

参数4:可选,animate函数执行完之后,要执行的函数


动画排队

1.同一个元素对象身上,如果定义了多个动画,动画会排队等待执行

2.如果是不同元素对象都有动画,不会出现排队机制

3.如果有其他非运动的代码,不会等待运动完成

4.之前学习的自带动画的显示隐藏方法,如果设置给同一个元素,也有动画排队

同一个元素身上的运动,可以简化成链式调用的方法

动画延迟

delay:延迟

将delay()设置在某个运动方法之前,表示后面的运动要在规定的时间之后再执行,有延迟运动效果

参数:时间的数值,表示延迟的时间

除了animate方法之外,其他的运动方法也有延迟效果

stop()方法 停止动画

stop()作用:设置元素对象身上的排队的动画以何种方式进行停止

有两个参数,都是布尔值

参数1:设置是否清空后面的动画排队,如果是true表示清空,如果是false表示不清空只停止当前的一个动画

参数2:设置当前是否立即完成,如果是true表示立即完成,对象会立刻走到结束位置,如果是false表示不完成当前动画,立即停止在当前位置

默认情况下,两个参数值默认值为fasle

实际工作中,一般要求会清空后面的动画 并且当前动画要停止在当前的位置

更多时候使用 stop(true)

$("#btn2").click(function(){

       $box1.stop(true,false)

   })

-------------------------------------------------------------------------------------

// 清空后面的动画,走到结尾

   $("#btn1").click(function(){

       $box1.stop(true,true)

   })

   // 清空后面的动画,立即停止在当前

   $("#btn2").click(function(){

       $box1.stop(true,false)

   })

   //不清空后面的动画,跳到结尾

   $("#btn3").click(function(){

       $box1.stop(false,true)

   })

   // 不清空动画,立即停在当前位置 执行下一次动画

   $("#btn4").click(function(){

       $box1.stop(false,false)

   })


动画排队问题

如果将开启运动的程序放在一个事件函数中,事件多次被触发,会执行多次函数,就会在一个元素身上添加了多个动画 会进行动画排队

需要去清除排队的动画,进行放骚扰操作

清空动画排队

清除方法1

利用stop()方法

在每一个运动函数之前都增加一个stop(true),表示在运动执行之前,会将前面排队的动画清空,然后停止在当前位置

清除方法2

利用函数节流方法,如果元素在运动,直接return,不要执行后面的运动代码

每个jQuery对象,都能调用一个is()方法,作用是显示元素对象的某种状态

如果参数位置是is(“:animated”),返回值是布尔值,true表示正在运动,false表示没有运动


jQuery节点操作

创建元素

语法:$('<li></li>')


追加元素1

1.向父元素最后追加

语法:父元素jQuery对象.append(新创建的jQuery对象)

语法:新创建jQuery对象.appendTo(‘父元素选择器’/父元素jQuery对象)


2.向父元素最前面追加

语法:父元素jQuery对象.prepend(新创建的jQuery对象)

语法:新创建jQuery对象.prependTo(‘父元素选择器’/父元素jQuery对象)


追加元素2

1.向元素后面追加新的兄弟

语法:jQuery对象.after(新创建的jQuery对象)

语法:新创建jQuery对象.insertAfter(‘选择器’/jQuery对象)


2.向元素前面追加新的兄弟

语法:jQuery对象.before(新创建的jQuery对象)

语法:新创建jQuery对象.insertBefore(‘选择器’/jQuery对象)


删除元素

语法:jQuery对象.remove()

删除谁就让谁调用方法

清空元素

清空方式1:jQuery对象.empty() 推荐使用,清空内部的所有元素及元素相关的事件

清空方式2:jQuery对象.html(‘’) 仅仅清空内部的元素,不清理内存中的元素的事件


元素尺寸

操作元素尺寸方法

1.width()、height()方法

语法:jQuery对象.width(数字)

语法:jQuery对象.width()


2.innerWidth()、innerHeight()方法

操作的大小是内容部分 + padding

语法:jQuery对象.innerWidth(数字)

语法:jQuery对象.innerWidth()


3.outerWidth()、outerHeight()方法

操作的大小是内容部分 + padding + border

语法:jQuery对象.outerWidth(数字)

语法:jQuery对象.outerWidth()


操作元素的位置

获取元素距离文档的位置

语法:jQuery对象.offset()

返回一个对象,对象中包含了元素的位置

注意:offset()方法获取的元素的位置,永远参照文档和定位没有关系

距离上级定位参考元素的位置

语法:jQuery对象.position()

返回一个对象,对象中包含了元素的位置

注意:position()方法获取的元素的位置,参照最近的定位元素(和定位有关系)


操作卷去的页面间距

语法:jQuery对象.scrollTop()

语法:jQuery对象.scrollTop(数字)


jQuery 事件操作

on方法注册事件

注册简单事件语法:jQuery对象.on(‘事件名’,事件处理程序)

事件委托的实现:jQuery对象.on(‘事件名’,‘选择器’,事件处理程序)

选择器:子孙元素

注意:在事件处理程序中,this代表的是子孙元素(所点最先触发的)

off方法移除事件

解绑简单的事件:jQuery对象.off(‘click’,事件处理程序名称)

解绑事件委托注册的事件:jQuery对象.off(‘click’,‘选择器’,事件处理程序名称)


触发事件

语法:jQuery对象.trigger(‘事件名’)


事件对象

鼠标事件对象相关的属性

事件对象.clientX/Y 参照浏览器

事件对象.pageX/Y 参照文档

事件对象.offsetX/Y 参照元素


键盘事件对象相关的属性

事件对象.kegCode 返回键码数字

事件对象.altKey/shiftKey/ctrlKey 返回是布尔值。检测是否按下(ture)


公共的属性/方法

事件对象.target 最初触发事件的DOM元素

事件对象.currentTarget 在事件冒泡阶段中的当前DOM元素

方法:

事件对象.preventDefault() 阻止默认行为

事件对象.stopPropagation() 阻止事件冒泡


多库共存问题

解决方法1:jQuery中不使用$,使用jQuery

解决方法2:jQuery库释放$符号的使用权,用其他简单的符号代替

jQuery.noConflict() 释放$,把$代表的函数返回给用户,用户可以用其他变量接收

上一篇:jquery设置layui表单select/checkbox/radio选中/取消状态checked

下一篇:jQuery的index()方法获取相应元素的索引值

讨论数量:0

请先登录再发表讨论。 2024-11-24

天涯网魂
3 杠 5 星
TA 的文章
TA 的随言
TA 的资源链