I assume you wanted something like this:  See the Pen LYjNbWp?editors=0010 by GreenSock (@GreenSock) on CodePen   I enhanced it by gradually speeding up or slowing down. You can tweak it however you want.   Strategy: tween timeScale of the loop timeline. You can use a negative value to make it go in reverse. Use a delayedCall() that you just restart whenever there's a wheel event so that after 1 second of inactivity, it fires