gpt4 book ai didi

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

转载 作者:行者123 更新时间:2023-11-28 06:36:14 24 4
gpt4 key购买 nike

我有一个位于 div 中的 Leaflet map ,其顶部有一个图层列表。图层列表通常很长,并且由于设置了 overflow:scrollbar CSS 属性而显示滚动条。

如果您单击滚动条以外的任意位置,拖动不会传播到下面的 map ,但是如果您单击并拖动滚动条,它就会传播到 map 并开始拖动。

这仅适用于 IE10+,它在 Firefox、Chrome 等中按预期工作。

如何防止这种行为?

最佳答案

我应该阅读更多有关 Leaflet 的内容。我发现Leaflet劫持了所有事件处理并实现了自己的事件模型。正常的 stopPropagation、window.event.cancelBubble 或您拥有的其他方法将不起作用。

您必须使用 Leaflet 自己的处理程序:

L.DomEvent.disableClickPropagation(leafletMenu); 

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

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

关于javascript - 在 IE10+ 中单击滚动条时如何停止事件传播,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34265044/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com