javascript JavaScript滚动到ID - 使用ES6类

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javascript JavaScript滚动到ID - 使用ES6类相关的知识,希望对你有一定的参考价值。

/**
* Scroll functionality
* @function
*/
class Scroll {
  /**
  * Constructor.
  * @param {Element} scrollBlock - The scroll to element
  */
  constructor(scrollBlock) {
    this.scrollComponent = scrollBlock.getAttribute('href');
    scrollBlock.addEventListener('click', event => this.animateToComponent(event));
  }

  /**
  * Animate scroll to element
  * @param {event} event - Prevents default action of click event
  */
  animateToComponent(event) {
    event.preventDefault();
    $('html, body').animate({scrollTop: $(this.scrollComponent).offset().top}, 500); // Using jQuery here for IE support
  }
}

/**
 * Scrolls to element on page.
 *
 */
export class ScrollTo {
  /**
   * Constructor.
   *
   */
  constructor() {
    this.initialisedScrollElements = [];
    const scrollButtons = document.querySelectorAll('.js-scroll-button');

    for (let i = 0; i < scrollButtons.length; i++) {
      const scrollButton = scrollButtons[i];
      this.initialisedScrollElements.push(new Scroll(scrollButton));
    }
  }
}

以上是关于javascript JavaScript滚动到ID - 使用ES6类的主要内容,如果未能解决你的问题,请参考以下文章

如何在纯 JavaScript 中平滑滚动到元素

javascript JavaScript滚动到ID - 使用ES6类

使用 JavaScript 滚动到页面顶部?

平滑 JavaScript/jQuery 滚动到元素

平滑 JavaScript/jQuery 滚动到元素

是啥导致无法在纯 JavaScript 中检测到滚动到 HTML 元素的底部?