如何在leaflet.js中启用拖动地图

时间:2015-02-19 13:49:07

标签: leaflet mapbox

我正在使用leaflet.js来可视化地图。我使用以下代码更新地图上的标记

map.dragging.enable();
data.forEach(function(d)
        {
    lat=d.lat;
    lon=d.lon;
    road=d.road;
    detector=d.detector;
    markers.push((new L.circle([lat, lon], 200, {
        color: 'yellow',
        fillColor: '#f0f',
        fillOpacity: 0.5
    })).bindPopup("Road Name:"+road+"<br>Detector ID: "+detector))

        });
for (var i = 0; i < markers.length; i++) {
    map.addLayer(markers[i]);
}
map.setView([lat, lon],13);
map.dragging.enable();

我正在循环之前和之后启用拖动地图。但是在更新操作之后,地图仍然无法拖动。但最初当我没有更新地图标记时,它可以拖动。但是当标记位置更新时,它变得不可拖动。我该如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

你不得不告诉我们你在哪里宣布lat,lon?它是否超出范围?您可能正在使用无效参数调用setView,这可能会导致Leaflet抛出错误。