Leaflet:如何防止地图平移到最后绘制的标记点?

3
我有一个基本的Leaflet地图,需要在上面绘制多个标记和线条。如何防止地图移动到最后绘制的对象?
我已经阅读了这里中有关为弹出窗口设置autopan : False的内容。 autopan : false选项是否适用于leaflet标记?
1个回答

2

如果您没有提供任何代码,很难说。通常(默认情况下),它不会平移到新的标记。例如,看看这段代码:

// HTML
<button onclick="setMarker()">Draw marker on Paris</button>
<div id="map"></div>

// Default map
var map = L.map('map', {
    'center': [0, 0],
    'zoom': 0,
    'layers': [
        L.tileLayer('http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png', {
            'attribution': 'Map data &copy; OpenStreetMap contributors'
        })
    ]
});

// Fit map to view London
map.fitBounds([
    [51.286839, -0.510350],
    [51.692322, 0.334030]
]);

// Function to draw marker on Paris
function setMarker () {
    L.marker([48.8567, 2.3508]).addTo(map);
}

它将地图设置为适合伦敦的尺寸,当您单击按钮时,在巴黎绘制一个标记,但地图不会平移。如果您在地图上看到平移行为,那么一定是您对地图所做的其他操作导致的。您可以在此处自行测试:

Plunker上的工作示例:http://plnkr.co/edit/C2qblP?p=preview


看起来解决方案是给地图设置一个中心点。谢谢! - Sammy Guergachi
这似乎不太对了(再次确认?),按照leaflet教程创建地图和标记,使用默认选项,地图将自动平移到新添加的标记中心,以及每当您使用setLatLng移动标记时(令人困惑的是,即使将“autoPan:false”设置为标记选项也无法阻止它发生)。 - Mike 'Pomax' Kamermans

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接