3

我遇到了传单问题,但我无法解决。可能有一个我不知道的简单解决方案。

所以基本上将分组标记的地图居中并不是那么困难,可以像下面这样完成:

var markerLayer = L.featureGroup(marker)
        .addTo(map);

var bounds = markerLayer.getBounds();
map.fitBounds(bounds);

其中标记是标记数组。但我的问题是我发送到此代码的标记数组信息是由另一个系统生成的。所以基本上标记可以在地图上相距很远,也可以非常接近。

当标记相距很远时,上面的代码可以完美地工作并使地图居中。但是,如果标记非常接近(例如,如果它们来自同一条街道),或者如果只有一个标记出现问题则更好。这是因为 getbounds 会给我一个很小的矩形,以至于传单破裂(这对用户也没有用)。我的意思是地图基本上试图放大到那个标记。所以我的问题是如何限制缩放。例如,如果地图中只有标记,我希望地图显示标记及其周围的几条街道。

4

2 回答 2

2

您可以给maxZoom地图一个并且fitBounds不会覆盖它。

于 2013-05-13T22:37:45.790 回答
0

The method map.fitBounds takes a parameter called maxZoom. This way you can have two maxZooms, one for the map and one for fitBounds.

于 2014-01-18T12:03:01.470 回答