如何减慢 Framer 动画的速度

How to slow down Framer animations

我正在寻找一种将 FramerJS 动画减慢一定幅度的解决方案。

Velocity Animation framework 中,可以执行 Velocity.mock = 10,将一切速度减慢 10

要么文档缺乏尊重,要么这个功能目前不存在,应该真的实现。

您可以使用

Framer.Loop.delta = 1 / 120

将所有动画减慢 2 倍。默认值为 1 / 60

虽然 Javier 的回答适用于大多数动画,但不适用于延迟。虽然不太理想,但我采用的方法是设置一个调试变量和函数,并通过它传递每个与时间相关的值:

slowdown = 5
s = (ms) ->
  return ms * slowdown

然后像这样使用它:

Framer.Defaults.Animation =
  time: s 0.3

…和:

Utils.delay s(0.3), ->
  myLayer.sendToBack()

slowdown 变量设置为 1 将使用您的标准时间(任何时间 1 本身)。