按住传单以设置标记

Chr*_*mos 2 leaflet

我想在传单地图上设置标记。为了实现这一点,我尝试了jquery-mobile-events并取得了小小的成功。这就是我集成它的方式:

$(map).off('taphold');
$(map).bind('taphold', function(e, options){
... do something ...
});
Run Code Online (Sandbox Code Playgroud)

它可以在桌面上运行,但不能在移动设备上运行。'map' 是一个 L.map 对象。与之相关的另一个问题是我无法获取 options.startPosition 和 options.endPosition。我需要这个来区分用于平移地图的长按和用于放置标记的长按。有谁知道这个问题的解决方案吗?

Chr*_*mos 5

Leaflet 中实际上有一个非常简洁的实现:

map.on('contextmenu', function(e){
  .. do something ...
});
Run Code Online (Sandbox Code Playgroud)

问题是桌面上右键也会触发。

编辑:您可以通过检查来防止它if (event.button == 2) {...}