Javascript 在给定期望起动速度的情况下,计算GSAP持续时间

Javascript 在给定期望起动速度的情况下,计算GSAP持续时间,javascript,tween,easing,gsap,Javascript,Tween,Easing,Gsap,我有一个两个二人组的序列。第二个吐温依赖于第一个吐温。第一个tween使用Power3.easeIn将元素向右移动。当第一个tween结束时,我计算元素的瞬时速度,这样我就知道它在tween结束时的移动速度有多快 然后,第二个tween需要使用将此元素的子元素向右移动。这个二人组的开始速度应与前一个二人组的结束速度相同。孩子在这段时间内移动的距离是固定的。如何计算第二个吐温的持续时间,使其以所需速度开始 编辑:演示我试图做的事情。如果我正确理解了你的问题,这正是GSAP的目的。它不仅可以跟踪任何

我有一个两个二人组的序列。第二个吐温依赖于第一个吐温。第一个tween使用Power3.easeIn将元素向右移动。当第一个tween结束时,我计算元素的瞬时速度,这样我就知道它在tween结束时的移动速度有多快

然后,第二个tween需要使用将此元素的子元素向右移动。这个二人组的开始速度应与前一个二人组的结束速度相同。孩子在这段时间内移动的距离是固定的。如何计算第二个吐温的持续时间,使其以所需速度开始


编辑:演示我试图做的事情。

如果我正确理解了你的问题,这正是GSAP的目的。它不仅可以跟踪任何对象的任何属性的逐点速度,还可以创建一个以该精确速度开始,然后自然滑动到停止点的二元曲线,您甚至可以告诉它应该停止的位置(或提供范围或捕捉点…许多选项)

to()方法具有计算持续时间的魔力。您只需输入目标值和结束值(或范围或捕捉点)

在文档中,您还可以找到几个示例

下面是基于您的示例的codepen演示:

请注意,您可以更改第一个吐温的持续时间以及x位置,并且子对象仍将正确设置动画。(这就是你要找的,对吗?)


免责声明:ThrowPropsPlugin是的会员权益,因此它不在公开的GSAP下载中。

您可以创建一个演示JSFIDLE或codepen吗?我很想知道你是如何计算第一个元素的瞬时速度的。当然!我也把这篇文章编辑成了原稿。
ThrowPropsPlugin.to(child, {x:{velocity:ThrowPropsPlugin.getVelocity(parentElement, "x"), end:250}, ease:Power2.easeOut});