在IE10+中单击滚动条时,如何停止事件传播

How do you stop event propagation when clicking a scrollbar in IE10+

本文关键字:何停止 事件 传播 IE10+ 单击 滚动条      更新时间:2023-09-26

我有一个位于div中的传单地图,上面有一个层列表。层列表通常很长,由于设置了overflow:scrollbar的CSS属性,所以会显示滚动条。

如果您单击滚动条以外的任何位置,则拖动不会传播到下面的地图,但是如果您单击并拖动滚动条,则拖动会传播到地图并开始拖动。

这只适用于IE10+,它在Firefox、Chrome等中正常工作。

如何防止这种行为?

我应该读更多关于传单的内容。我发现传单劫持了所有的事件处理,并实现了自己的事件模型。正常的stopPropagation、window.event.cancelBubble或其他什么都不起作用。

你必须使用传单自己的处理程序:

L.DomEvent.disableClickPropagation(leafletMenu); 

原因是我的菜单元素是作为传单控件创建的:

leafletMenu = L.DomUtil.create('div', 'niras-map-menu');