我尝试了以下代码来禁止在Leaflet弹出窗口中默认右键单击:
$('。leaflet-popup-content-wrapper')。bind('contextmenu',function(e) { 返回false; });
此技术适用于所有其他类,但不适用于此实例。
有什么想法吗?
答案 0 :(得分:0)
没有"抑制"一个事件。您可以停止传播事件,阻止事件的默认操作,但压制事件不是一件事。
请阅读:
http://leafletjs.com/reference-1.0.3.html#domevent-stoppropagation
http://leafletjs.com/reference-1.0.3.html#domevent-preventdefault
http://leafletjs.com/reference-1.0.3.html#domevent-stop
https://developer.mozilla.org/en-US/docs/Web/API/Event/stopPropagation
https://developer.mozilla.org/en-US/docs/Web/API/Event/preventDefault
event.preventDefault() vs. return false
你想阻止事件冒泡吗?是否要阻止浏览器显示右键单击菜单?既?
另请注意,jQuery事件是不 DOM事件,此外,Leaflet事件是不 DOM事件。在某些情况下,停止jQuery / Leaflet事件可能无法停止底层DOM事件。在L.DomEvent.on()
中使用Vanilla JS或一些超级简单包装有助于在这些情况下重新获得控制权。