Jump to content
GreenSock

Search In
  • More options...
Find results that contain...
Find results in...
sutterlity

Reverse TimelineLite

Go to solution Solved by Shaun Gorneau,

Warning: Please note

This thread was started before GSAP 3 was released. Some information, especially the syntax, may be out of date for GSAP 3. Please see the GSAP 3 migration guide and release notes for more information about how to update the code to GSAP 3's syntax. 

Recommended Posts

Hello,
I have a little problem understanding the function of reverse TimelineLite.

If someone has 5 minutes to help me understand, would be nice.

$('#plop').on('click', function() {
  $(this).toggleClass('is-open');
  // Animation
  var animNav = new TimelineLite({
    paused: true
  });
  animNav.to('#nav', 0.2, {
      x: 100,
      opacity: 1,
      ease: Sine.easeInOut
    })
    .staggerTo('.nav-link', 0.1, {
      opacity: 1,
      ease: Sine.easeInOut
    }, '0.1', '-=0.15');
  if ($(this).hasClass('is-open')) {
    animNav.play();
  } else {
    animNav.reverse();
  }
  return false;
});

 

See the Pen OVaGjB by sutterlity (@sutterlity) on CodePen

Link to post
Share on other sites

The problem lies in creating a new timeline on every click ... essentially, it is issuing the reverse() method on a timeline that hasn't yet played. Create the timeline outside of your click event and then control it with the click event.

 

See the Pen gpQyzB by sgorneau (@sgorneau) on CodePen

  • Like 2
Link to post
Share on other sites

Great job, Shaun!

Thanks for helping out.

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    No registered users viewing this page.

×