Javascript 动画完成后如何停止velocity.js动画?
我用velocity.js创建了一个脉动效果,作为IE9的后备(CSS动画见第2框) 当鼠标在动画完成之前离开框时(停留直到脉冲增长而不是移出),脉动元素保持可见 效果完成后,如何停止mouseout上的动画 我试图远离Javascript 动画完成后如何停止velocity.js动画?,javascript,jquery,css,animation,velocity.js,Javascript,Jquery,Css,Animation,Velocity.js,我用velocity.js创建了一个脉动效果,作为IE9的后备(CSS动画见第2框) 当鼠标在动画完成之前离开框时(停留直到脉冲增长而不是移出),脉动元素保持可见 效果完成后,如何停止mouseout上的动画 我试图远离.removeAttr('style'),希望动画完成,然后停止。感谢您的帮助 如果我用这个 $(this).find('.effect-holder').velocity('reverse').velocity("stop"); 快速移动鼠标动画会再次开始,有时会在其间暂停。
.removeAttr('style')
,希望动画完成,然后停止。感谢您的帮助
如果我用这个
$(this).find('.effect-holder').velocity('reverse').velocity("stop");
快速移动鼠标动画会再次开始,有时会在其间暂停。或者使用.velocity(“finish”)
而不是.velocity(“stop”)
,或者使用不同的开/关动画,两种动画都会调用“stop”
(即,当鼠标正确移动时捕捉)
还要注意,{…循环:true…}
意味着第一个动画永远不会结束,因此的“停止”
将在停止后立即发生“反转”(调用.velocity(“停止”,true)
,以防止出现这种情况)
编辑:关于“finish”
错误的未结问题-
edit2:添加简单示例:
$("box").hover(function() {
// over
this.velocity("stop", true).velocity({
scale: [1.2, 0.9]
}, {
duration: 800,
loop: true
})
}, function() {
// out
this.velocity("stop", true).velocity({
scale: 0.9
}, {
easing: "ease-out",
duration: 800
})
});
想举个例子吗?finish在结尾时是脉动的,stop true根本不播放动画。我刚意识到我在四月份发布了一个关于finish bug的问题——所以将悬停拆分为启动和停止功能将是唯一可行的。如果我有时间(你仍然想要),那么我可以举一个简单的例子,就是现在工作很忙!当然,别着急,我现在正在做其他事情。任何时候你都可以发一个例子。
$("box").hover(function() {
// over
this.velocity("stop", true).velocity({
scale: [1.2, 0.9]
}, {
duration: 800,
loop: true
})
}, function() {
// out
this.velocity("stop", true).velocity({
scale: 0.9
}, {
easing: "ease-out",
duration: 800
})
});