jQuery停止动画和判断是否处于动画状态

admin

发表文章数:3253

停止元素的动画

停止所有在指定元素上正在运行的动画。

很多时候需要停止匹配元素正在进行的动画,如果需要在某处停止动画,需要使用stop()方法。stop()方法的语法缩构为:

stop([clearQueue], [gotoEnd])

参数clearQHCHC和gotoEnd都是可选的参数,为Boolean值(ture或flase)。

clearQueue如果设置成true,则清空队列,可以立即结束动画。

gotoEnd让当前正在执行的动画立即完成,并且重设show和hide的原始样式,调用回调函数等。

如果接使用stop()方法,经常会遇到这种情况.在为某个元索绑定hover事件之后,用户把光标移入元素时会触发动画效果,而当这个动画还没结束时,用户就将光标移出这个元素了,那么光标移出的动画效果将会被放进队列之中,等待光标移入的动画结束后再执行。因此如果光标移入移出过快就会导致动画效果与光标的动作不一致。

此时只要让光标的移入、移出动作之前加入stop()方法,就能解决这个问题。stop()方法会结束当前在进行的动l画,并立即执行队列中个动画。

判断元素是否处于动画状态

在使用animate()方法的时候,要避免动画积累而导致的动画与用户的行为不一致。当用户快速在某个元素执行animate()动画时,就会出现动画积累。解决方法足判断元素是否正处于动画状态,如果元素不处于动画状态,才为元素添加新的动画,否则不添加。代码如下:

if($(element).is(":animated")){    //判断元素是否正处于动画状态
//如果当前没有进行动画,则添加新动画
}

这个判断方法在animate()动画中经常被用到,需要特别注意。

未经允许不得转载:作者:admin, 转载或复制请以 超链接形式 并注明出处 夜河资源网
原文地址:《jQuery停止动画和判断是否处于动画状态》 发布于2019-04-19

分享到:
赞(0) 打赏

评论 抢沙发

7 + 7 =


撰写不易~如果您觉得文章对您有帮助的话可以打赏我哦~谢谢亲亲~

支付宝扫一扫打赏

微信扫一扫打赏

外服网游加速器破解版
包含腾讯网游加速器、海豚网游加速器等八款知名加速器,可加速外服游戏,永久包售后包更新,不定时添加新款破解版加速器!
切换注册

登录

忘记密码 ?

切换登录

注册