jquery - 以速度循环/重新启动动画,无需反向播放

标签 jquery animation velocity.js

我正在使用 Velocity 在屏幕上平移元素。完成后,我希望元素返回到其原点并循环动画,绕过循环时发生的默认反向效果。

我有我的标准动画函数,我将我的值传递给其中:

$(element).delay(initialDelay).velocity(animationValues, {duration: duration, easing: easing, loop: loop, complete: function() {
   callback();
}});

有没有办法通过平移元素而不是仅仅旋转元素来实现此功能?

最佳答案

确保在动画函数中初始化位置 - 请参阅下面的示例:

$(document).ready(function(){

  var el = $('#target');
  
  function anim() {
    el.velocity({ 'left': 0   }, 0 )
      .velocity({ 'left': 300 }, { duration: 2000, complete: anim });
  };

  anim();

});
#target {
  background: #999; width: 100px; height: 100px; position: absolute;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="http://cdn.jsdelivr.net/velocity/1.4.2/velocity.min.js"></script>
<div id="target"></div>

关于jquery - 以速度循环/重新启动动画,无需反向播放,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31036940/

相关文章:

javascript - 类在 IE8 中未定义

javascript - 具有可变内容的 jQuery 选择器

javascript - 如何查询以相同ID开头的多个元素,然后检查输入是否发生变化

c# - Document.Ready() 在 PostBack 后不工作

swift - 如何使用同一个 UIButton 在不同时间执行多个不同的动画?

wpf - 动画网格背景颜色

javascript - 如何在 native react (声明式)中将多个动画链接在一起?

javascript - translateX 到视口(viewport)左侧

javascript - 在 React 中使用 velocity.js 动画

javascript - Velocity.js 动画延迟