2015-10-06 251 views
0

我正在使用L.map上下文菜单来侦听地图上的右键单击。但是,当我右键单击地图时,除了正在触发contextmenu事件外,它还会触发mousedown事件,并且MouseEvent数据不会指示哪个鼠标按钮被按下,因此除了执行“左按下”代码外“右按”代码。有没有办法解决这个问题?Mapbox右键单击

在此先感谢。

托尼

回答

0

如果你要听左键点击你必须使用click情况下,如果你想监听右击你必须使用contextmenu事件。 mousedown事件在左键和右键点击时触发。它完全是它应该做的。

+0

嗨iH8,我恭敬地不同意。我将mousedown与mousemove和mouseup结合使用来处理我自己的绘图,以便选择多组标记,通过多次点击来测量距离等。我无法使用click来达到我的目的。期望能够确定在mousedown,mousemove和mouseup事件中按下哪个鼠标按钮是很常见的。即使原始的JavaScript将允许您检查事件,以确定按下鼠标按钮。 –

+0

我有点困惑,为什么你不能使用你的项目的点击事件。也许你可以在你的问题中给出一个代码示例,以便我们理解?对我来说这听起来有点难听 – iH8

+0

当我在地图上捕获Leaflet'mousedown'事件时,我可以看到'originalEvent'的'button'属性通过了吗?你正在运行什么Leaflet版本? – snkashis