Reactjs侦听滚动结束事件

时间:2018-05-02 09:26:02

标签: javascript jquery reactjs web scroll

我正在处理一个小型应用程序,我想知道如何监听滚动事件的 end

我知道以下代码允许我监听滚动事件,但在我的情况下,我正在寻找一种在用户停止滚动时触发事件的方法。

window.addEventListener('scroll', () => {
  (!this.state.showScrollWidget) ? this.setState({showScrollWidget: true}) : null;
})

如果有人对最佳方式有所了解,我将非常感谢您的帮助,否则,如果有任何第三方图书馆可以完成这项工作,我也会感激任何建议。

感谢。

1 个答案:

答案 0 :(得分:5)

我不认为有任何事件可以通知您滚动停止了。通常,您需要等待一段时间才能过去,直到最后一次滚动事件。通常你会使用debounce操作 - 许多不同的实用程序库实现它,例如lodash(https://lodash.com/docs/4.17.10#debounce):

window.addEventListener('scroll', _.debounce(() => { console.log('scrolling stopped') }, 1000))
相关问题