30秒学会 JavaScript 片段 · 2018年12月19日

30秒学会 JavaScript 片段 – scrollToTop

Smooth-scrolls to the top of the page.

Get distance from top using document.documentElement.scrollTop or document.body.scrollTop.
Scroll by a fraction of the distance from the top. Use window.requestAnimationFrame() to animate the scrolling.

代码片段

const scrollToTop = () => {
  const c = document.documentElement.scrollTop || document.body.scrollTop;
  if (c > 0) {
    window.requestAnimationFrame(scrollToTop);
    window.scrollTo(0, c - c / 8);
  }
};

使用样例

scrollToTop();