下面的代码基本上使div来回动画。然后,我希望动画在悬停时停止。如果我删除以下行,它将起作用:“$(”。block“)。animate({left:'0px'},1,animate);”但是然后div只动画一次,这不是我想要的。那么,如何保留.stop()功能但仍使动画无限循环?
$(function animate(){
$(".block").animate({left: '+=500px'}, 2000);
$(".block").animate({left: '0px'}, 1, animate);
});
$(".block").hover(function(){
$(".block").stop();
$(".block").animate({ width:"20%", height:"20%"}, 500 );
});
最佳答案
更新了
不知道:
$(".block").stop( true, true );
是您要寻找的。
第一个
true
清除队列,最后一个true
跳到动画队列的末尾,从而有效地结束了动画。$(".block").stop( true );
这将清除队列,但不会跳到最后。
关于jquery - 如何停止动画循环,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6331448/