You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Framer Motion duration属性无法控制动画时长问题求助

解决方案

问题出在Framer Motion的duration单位是秒,而非毫秒。你设置的100000相当于100000秒(约27小时),动画会极其缓慢,看起来像是瞬间完成,导致你误以为时长设置不生效。

修正步骤:

  • 把duration值改成以秒为单位的数字,比如设置2表示动画持续2秒:
planBoxControls.start({
  opacity: 1,
  scale: 1,
  transition: {
    delay: 0,
    duration: 2, // 动画持续2秒
    opacity: { ease: 'linear' },
    scale: { ease: 'backOut' },
  },
});
  • 如果需要让淡入和缩放动画使用不同时长,可以在单个属性的过渡配置中单独指定:
planBoxControls.start({
  opacity: 1,
  scale: 1,
  transition: {
    delay: 0,
    opacity: { ease: 'linear', duration: 3 }, // 淡入3秒完成
    scale: { ease: 'backOut', duration: 2 }, // 缩放2秒完成
  },
});

验证方法:

先设置一个极小的duration值(比如0.5,即0.5秒),观察动画速度是否明显变快,以此确认设置是否生效。

如果还是存在问题,检查项目中是否有全局的Framer Motion过渡配置(比如通过motion.config设置了默认duration),这种情况下需要在当前动画中显式覆盖全局配置。

内容的提问来源于stack exchange,提问作者Yaniv Sagy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.18 04:47:06