滚动事件在顶部元素和底部元素上触发

时间:2019-05-08 07:15:43

标签: javascript reactjs dom react-virtualized

我正在将AutoSizer用于我的应用程序中的一种用例。在Autosizer代码中,由于触发了滚动事件,它们更改了scrollTop。当捕获了滚动事件(并且没有冒泡)时,如何防止AutoSizer中的滚动事件(或仅将事件限制为所需的元素)?我可以找到的一种方法是,检查事件处理程序中的targetcurrentTarget是否相同

onScroll = event => {
    if(event.target === event.currentTarget){
        ...do Something
    }
} 

这是正确的方法还是其他方法? 附言我在应用程序中使用react

1 个答案:

答案 0 :(得分:0)

如果我理解正确,那么如果子组件已经滚动,则希望防止在父组件上滚动。如果是,请使用e.stopPropagation();

onScroll = event => {
    event.stopPropagation();
    // ...do Something
}