如何为所有滚动事件添加侦听器?

时间:2019-09-22 19:59:09

标签: scroll addeventlistener reason bucklescript bs-webapi

我需要为Reason React中的所有滚动事件或所有影响主窗口的滚动影响添加侦听器(两者都可以)。

尝试此操作,但事件不会触发:

open Webapi.Dom;

Document.addEventListener("scroll", onScroll);

P.S。另外,还有人提到addEventListener是部分应用程序,因此我担心这可能是一个3参数的函数,期望目标对象而不是窗口范围的函数。

1 个答案:

答案 0 :(得分:2)

您怀疑这是一个三参数函数是正确的。它希望引用应附加事件侦听器的文档。可通过Webapi.Dom.document方便地访问当前范围内的文档,因此您只需添加以下内容即可:

Document.addEventListener("scroll", onScroll, document);

bs-webapi中的任何地方都使用此约定。函数不是硬编码到当前作用域中的文档或窗口中的,因为它们不是您可以使用的唯一函数,即使它们通常是您想要的使用的函数使用。