如何参加滚动事件?

新手上路,请多包涵

我需要从带有溢出的 div 获取滚动事件:在我的 Angular 2 应用程序中滚动。

似乎 onscroll 事件 不适用于 Angular 2。

我怎么能做到这一点?

原文由 Natanael 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 506
2 个回答
// @HostListener('scroll', ['$event']) // for scroll events of the current element
@HostListener('window:scroll', ['$event']) // for window scroll events
onScroll(event) {
  ...
}

或者

<div (scroll)="onScroll($event)"></div>

原文由 Günter Zöchbauer 发布,翻译遵循 CC BY-SA 4.0 许可协议

您可以使用 @HostListener 装饰器。适用于 Angular 4 及更高版本。

 import { HostListener } from '@angular/core';

@HostListener("window:scroll", []) onWindowScroll() {
    // do some stuff here when the window is scrolled
    const verticalOffset = window.pageYOffset
          || document.documentElement.scrollTop
          || document.body.scrollTop || 0;
}

原文由 Uliana Pavelko 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题