jquery动画、事件绑定、事件委托知识点总结

本文总结了jQuery的动画效果,包括show/hide/toggle、滑动效果、淡入淡出以及自定义动画。同时,详细阐述了jQuery中的事件处理,如事件绑定、事件委托、事件冒泡的阻止方法,以及页面加载时机。此外,还介绍了如何实现拖拽功能和高效使用事件处理方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

jquery的动画

基本动画 :

show() 没有参数 等价 css:display:block
可以有三个参数
第一个参数 :动画执行的时间
第二个参数 : 动画执行方式 linear swing
第三个参数 :动画完成后的回调函数
hide() 隐藏 等价 css:display:none
toggle() 切换 显示 / 隐藏

上拉/下拉 :
slideDown() 通过高度的改变 显示 某个元素
slideUp() 通过高度的改变 隐藏 某个元素
slideToggle() 切换

透明度 :

fadeIn(1000,function() { }) 淡入 通过透明度的改变 显示 某个元素
fadeOut() 隐藏
fadeToggle() 切换

fadeTo() 调整某个元素的透明度
第一个参数 : 时间 (不能省略) 时间为0 也要写出来
第二个参数 : 透明度值

JQ实现基础动画
自定义动画 :animate

对象.animate( { } , 时间 , 回调函数 )
stop() 停止当前正在运行的动画 其余动画继续执行 (多个相同的元素含有多个同样的事件时 )
delay() 动画延时
return false 在jq的事件中可以完成阻止事件冒泡
//案例(点击按钮,将盒子顺时针围绕屏幕一圈,各阶段实现不同的动画效果)
1、给booton按钮一个点击事件
2、给盒子自定义动画,第一次动画让盒子的宽度变为200px,透明度变为0.3,让盒子运动到右侧停止,left值等于屏幕宽度减去盒子的宽度,这个过程所有时间为2秒
3、第二次运动,盒子运动到屏幕下方停止运动,top值为屏幕的高度减去盒子的高度所有时间为1秒
4、设置延时,延时2秒回执行接下来运动
5、让盒子运动到左侧,left值为0;
6、让盒子运动到上方,top值为0;

案例代码详解

jquery遍历

$().each( function(){

} ) 或
$.each( $() , function(){

} )

jquery中阻止冒泡方式 :return false

size()方法 length属性 获取jq元素的个数
jquery的offset 和 position
position() 获取具有定位的元素的偏移量 结果是一个对象 有left和top两个属性
offset() 获取相对于文档顶部和左侧的偏移量 结果是一个对象 有left和top两个属性
代码测试及结果

jquery中的事件处理

事件 : 原生的去掉on
mouseover和mouseenter的区别 :
前者可以产生冒泡现象 会频繁触发事件处理程序
后者不会产生冒泡行为 不会频繁触发事件处理程序
冒泡测试
jquery的页面加载 :
$(document).ready(function(){

}) 简写成
$(function(){

})

jquery的页面加载中的代码 不需要等页面所有内容全部加载完成后执行 dom元素准备就绪即可执行
jquery的页面加载函数可以存在多个
$(document).ready( callback )
或简写成
jQuery(callback)
$( callback )

事件处理 :

事件绑定 :
bind()
用法 :
对象.bind(“事件”,function(){ })
对象.bind({
事件 : function(){},
事件 : function(){},

})
unbind() 解除绑定 unbind 也可以用
来关闭on绑定的事件
事件绑定使用方法代码详解
//案例,对一个盒子使用jq完成拖拽

<script>
	$("#box").bind("mousedown",function(e){
		let disx = e.pageX - $(this).offset().left;
		let disy = e.pageY - $(this).offset().top;
		$(document).bind("mousemove" , function(e){
			$("#box").css({
				left : e.pageX -disx,
				top : e.pageY - disy
			})
		})
		$(document).bind("mouseup" , function(){
			$(document).unbind("mousemove")
		})
		return false;
	})
</script>

事件委托 delegate:
对象.delegate(“事件源”,事件,function(){
})
取消委托 : undelegate

jq事件委托的用法
事件绑定+事件委托 : on ---- off off可以用来关闭bind绑定的事件
事件绑定 用法 和bind()

事件委托 用法 :

对象.on(事件 , "事件源" , function(){

})

one() 只触发一次事件的事件处理方法

事件切换 hover
用户 :

  对象.hover(function(){
        mouseenter
    },function(){
        mouseleave
    })

jq中hover的用法

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值