我在Leaflet地图上遇到了一个不寻常的问题。我有一个小提琴here。
var map = L.map('map').setView([51.505, -0.09], 13);
var circle = L.circle([51.508, -0.11], 500, {
color: 'red',
fillColor: '#f03',
fillOpacity: 0.5
}); //.addTo(map);
var polygon = L.polygon([
[51.509, -0.08],
[51.503, -0.06],
[51.51, -0.047]
]).addTo(map);
var featureGroup = L.featureGroup([circle])
.addTo(map);
map.on("movestart", function({
map.removeLayer(featureGroup);
});
map.on("moveend", function(){
map.addLayer(featureGroup);
});
我的问题出在触摸设备上,让我们说iPad,运行Chrome或Safari。
在触摸设备上打开这个小提琴,触摸地图上的红色圆圈,然后移动地图(圆圈消失,这是故意的)。但请注意,移动事件结束(不受欢迎)。
注意:我故意从地图中删除功能组,以便在地图上显示大量图层时平移和缩放时获得性能(我在我的应用中显示1000多个多边形,这对平板电脑等低性能设备尤其有用) )。然后,当移动结束时,我重新添加功能组。
仅当用户使用Touch从图层(在此示例中为红色圆圈)中平移地图时,才会出现此问题。在桌面计算机上使用鼠标指针正常工作。
以前有人遇到过这个问题吗?我已经检查了GitHub上的已知问题,但没有找到与此相关的任何内容。