将一系列标记添加到LeafletJS地图后,是否可以让Leaflet缩放并重新对焦以显示每个标记?我看到many similar questions用于Google地图,但没有用于Leaflet。缩放以适合LeafletJS地图上的所有标记
喜欢的东西:
map.fitAllMarkers();
我也注意到several functions in Leaflet拿到地图的界限,但我不知道如何使用那些预期的效果。
将一系列标记添加到LeafletJS地图后,是否可以让Leaflet缩放并重新对焦以显示每个标记?我看到many similar questions用于Google地图,但没有用于Leaflet。缩放以适合LeafletJS地图上的所有标记
喜欢的东西:
map.fitAllMarkers();
我也注意到several functions in Leaflet拿到地图的界限,但我不知道如何使用那些预期的效果。
最后,这实际上很简单,但没有统一到一个函数中。首先,你需要创建一个小册子范围对象:
var bounds = new L.LatLngBounds();
然后,对于地图上的每个标记:
bounds.extend(markerObject.getLatLng());
最后,应用新边界的地图:
mapObject.fitBounds(bounds);
您也可以利用特意制作的featureGroup.getBounds()
方法使地图符合您标记的范围:
var fg = L.featureGroup([arrayOfMarkers]).addTo(map);
map.fitBounds(fg.getBounds());