kront
kront

Reputation: 53

Vanilla Javascript scrollTo with Easing?

I'm trying add easing animation to window.scrollTo function but no luck. It works linear. I want to use easeInOutExpo animation:

var easeInOutExpo= function (time, duration, valueStart, valueChange) {
  if (time==0) return valueStart;
  if (time==duration) return valueStart+valueChange;
  if ((time/=duration/2) < 1) return valueChange/2 * Math.pow(2, 10 * (time - 1)) + valueStart;
  return valueChange/2 * (-Math.pow(2, -10 * --time) + 2) + valueStart;
}

In this javascript function:

window.scrollTo({
   top: 500,
   left: 0,
   behavior: "smooth",
});

Is there any way to use this easing effect on window.scrollTo without using any library? I only need easeInOutExpo.

Upvotes: 2

Views: 246

Answers (0)

Related Questions