首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用anime.js/velocity.js/等设置动画进度?

如何使用anime.js/velocity.js/等设置动画进度?
EN

Stack Overflow用户
提问于 2021-09-21 18:39:31
回答 1查看 141关注 0票数 0

我有这样的动画(anime.js示例):

代码语言:javascript
复制
anime({
  targets: '.selector',
  opacity: 0.5,
  translateX: 200,
  duration: 1,
});

然后,我需要设置这个动画的进度取决于页面滚动位置(或任何用于滚动的js库)。

例如:

  • 在20%的滚动中,必须设置为"opacity:0.9;transform:translateX(40px);"
  • 关于50%的卷轴- "opacity:0.75;transform:translateX(100px);"
  • 等。

我想避免自己计算动画的每一个价值。

anime.js/velocity.js中是否有内置工具或类似于它们的库?

gsap.js有可以根据我的需要工作的.progress()方法,但我想为此目的找到更轻的库。

EN

回答 1

Stack Overflow用户

发布于 2022-05-09 17:35:42

是的,anime.js有寻找进展的功能。你要找的是寻求()。它是这样用的:

代码语言:javascript
复制
var animation = anime({
  targets: '.selector',
  opacity: 0.5,
  translateX: 200,
  duration: 1,
});
animation.seek(0.2 * animation.duration);
animation.seek(0.5 * animation.duration);

它是以毫秒为单位完成的,所以您必须乘以动画的持续时间。但就您的目的而言,只需在滚动事件处理程序中插入滚动进度,所有这些都会很好地工作。

代码语言:javascript
复制
animation.seek(scrollProgress * animation.duration);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69274023

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档