我在触摸设备上拖动Leaflet对话框时遇到了问题。
我使用Leaflet 1.0.3(http://leafletjs.com/)和Leaflet.Dialog插件(https://github.com/NBTSolutions/Leaflet.Dialog)在地图上显示一些信息。它与鼠标事件完美配合。但是,它在触摸屏上完全失败。
我怀疑Leaflet的触摸设备上的地图事件监听器禁止在叠加元素上触摸事件,所以我尝试在地图选项中设置拖动并点击为false,但都没有奏效。我还在对话框中添加了jquery-ui可拖动功能,使整个对话框在非触摸屏设备上可拖动;但是,触摸事件仍然没有运气。关于如何使这项工作的任何想法?
var map = L.map('map', {
maxZoom: 20,
minZoom: 5/*,
tap: false,
dragging: false*/});
var dialog = L.control.dialog(options)
.setContent("test")
.addTo(map);
$('.leaflet-control-dialog').draggable();
答案 0 :(得分:0)
为了回答我自己的问题,我设法使用Touch Punch jQuery-UI插件使其工作: https://github.com/furf/jquery-ui-touch-punch/
我仍然有兴趣知道这是否可以使用原生Leaflet功能完成。