动画完成后,如何在没有时间轴的情况下反转GSAP动画?

时间:2020-06-15 06:53:08

标签: javascript animation scroll scrollbar gsap

我刚遇到ScrollTrigger插件,这就是为我使用GSAP的原因。我只想在“滚动”上给出一个平滑的倾斜动画,它属于速度。但是我不知道如何在没有时间轴的情况下反转动画。我尝试了yoyo,它可以运行,但不稳定。有时它会粘在某些角度上。任何其他方式可以解决此问题。

而且,我知道我可以将另一个GSAP动画放到onComplete上,但这不是一个明确的方法。我正在寻找一个公平的解决方案。

import { gsap } from 'gsap'
import { ScrollTrigger } from 'gsap/ScrollTrigger'
import './style.scss'

gsap.registerPlugin(ScrollTrigger)
gsap.set('.box', { transformOrigin: 'right center', force3D: true })

ScrollTrigger.create({
  trigger: '.grid',
  onUpdate: self => {
    const velocity = Math.round(self.getVelocity() / 300)

    gsap.to('.box', {
      skewY: velocity,
      duration: 0.2,
      yoyo: true,
    })
  },
})

0 个答案:

没有答案