jQuery-基础包预设动画&自定义动画

显示/隐藏

(链接)原生js动画实现方法

动画效果

函数名动画效果
hideoverflow=hiddenwidth,height,margin,padding,opacity不断减小至0display=none
showdisplay=noneoverflow=hiddenwidth,height,margin,padding,opacity不断增加至源值
toggle自动判断以执行hideshow

hide(1800)效果:

语法

hide,show,toggle语法都相同,所以只展示hide的语法

格式:hide(speed,easing,callback)

参数(*为可选)类型含义
*speedString(预设值) 或 Number执行完所需要的时间(ms),默认为0,预设值有:slow(600),normal(400),fast(200)
*easingString要使用的缓动函数,自带两种:linear,swing(默认)
*callbackFunction回调函数,动画执行完后调用的函数

淡入/淡出

动画效果

函数名动画效果
fadeOutopacity不断减小至0display=none
fadeIndisplay=noneopacity不断增加至1
fadeToggle自动判断以执行fadeInfadeOut
fadeTodisplay=none(任何情况下都执行) → opacity不断减小或增加至设置值

fadeOut(1800)效果:

语法

fadeIn,fadeOut,fadeToggle语法和hide相同,这里不展示,但要注意fade的speed默认值为400
fadeTo相比其他3个增加了指定opacity的功能,语法如下:

格式:fadeTo(speed,opacity,easing,callback)

参数(*为可选)类型含义
speed
opacityNumber可设置0-1,指定要达到的opacity
*easing
*callback
  • 与 显示/隐藏的3个函数 和 fade的其他3个函数 相比,fadeTo始终会删除操作对象的display=none,即使执行fadeTo(0)display=none,也会先删除再执行,要注意这会造成对象不显示但占位
  • 虽然除fadeTo外的其他3个函数speed默认值为400,但因为fadeTo分不清speed和opacity,所以fadeTo的speed不可省

滑入/滑出

动画效果

函数名动画效果
slideUpoverflow=hiddenheight,margin(top|bottom),padding(top|bottom)不断减小至0display=none
slideDowndisplay=noneoverflow=hiddenheight,margin(top|bottom),padding(top|bottom)不断增加至源值
slideToggle自动判断以执行slideUpslideDown

语法

slide语法和hide相同,这里不展示,但要注意slide的speed默认值为400

自定义动画

语法

格式:animate(args,speed,easing,callback)

参数(*为可选)类型含义
argsobject(用{}括起来的是对象)要实现效果的样式参数
*speed默认为400
*easing
*callback

基础的jQuery包自定义动画只能实现数值类型参数的动画,要实现color等参数需要导入颜色插件 链接:jQuery ui,这里只展示基础包animate

参数书写格式

书写规范

var json={
	width:100,	//Number类型不加单位则默认为px
	height:"12em",	//String类型可以自定义单位
	margin:"10",	//String类型不加单位默认也为px
	paddinLeft:0,	//根据js命名规范,属性名必须写成驼峰式
	"padding-top":0,	//属性作为字符串则不必遵循js命名规范
	"paddingRight":0,	//属性作为字符串也可以写成驼峰式
	opacity:0.5		//小数位的参数也可以实现动画
};

使用相对值
可以用 += 或 -= ,且只有这两种

var json={
	fontSize:"+=10px",
	height:"-=20"
};

使用预设值
可以把属性的动画值设置 显示/隐藏 小节中的hide,show,toggle
例如hide

var json={
	width:"hide",
	fontSize:"hide"	//只要是数值型都可以
};

流程为:overflow=hiddenwidth,font-size不断减小至0display=none
流程中的黄色部分为设置的参数,和自带的hide效果相比,只是替换了参数,其他部分不变

队列
有多个动画顺序进行时,可以依次由上至下书写:

car1.animate({height:100});
car1.animate({width:100});
car1.animate({width:200,height:200});
/* ... */
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值