Leaflet 自动缩放地图以适合所有标记

Leaflet 自动缩放地图以适合所有标记,leaflet,markerclusterer,Leaflet,Markerclusterer,下面是一个例子,你可以看到她身上的弹跳物 无论初始化地图时提供了什么缩放值,我都希望自动缩放地图,以便所有标记都位于视图内。这是我的密码 var tiles = L.tileLayer('http://{s}.tile.osm.org/{z}/{x}/{y}.png', { maxZoom: 18, attribution: '&copy; <a href="http://osm.org/copyright">OpenStreetMap<

下面是一个例子,你可以看到她身上的弹跳物

无论初始化地图时提供了什么缩放值,我都希望自动缩放地图,以便所有标记都位于视图内。这是我的密码

var tiles = L.tileLayer('http://{s}.tile.osm.org/{z}/{x}/{y}.png', {
        maxZoom: 18,
        attribution: '&copy; <a href="http://osm.org/copyright">OpenStreetMap</a> contributors, Points &copy 2012 LINZ'
    }),
    latlng = L.latLng(-37.82, 175.24);

var map = L.map('map', {center: latlng, zoom: 10, layers: [tiles]});

var markers = L.markerClusterGroup();

for (var i = 0; i < addressPoints.length; i++) {
    var a = addressPoints[i];
    var title = a[2];
    var marker = L.marker(new L.LatLng(a[0], a[1]), { title: title });
    marker.bindPopup(title);
    markers.addLayer(marker);
}

map.addLayer(markers);

var group = new L.featureGroup(markers);

map.fitBounds(group.getBounds());
var tiles=L.tileLayer('http://{s}.tile.osm.org/{z}/{x}/{y}.png'{
maxZoom:18,
属性:“©;贡献者、积分和副本2012 LINZ”
}),
latlng=L.latlng(-37.82175.24);
var map=L.map('map',{center:latlng,zoom:10,layers:[tiles]});
var markers=L.markerClusterGroup();
对于(变量i=0;i
您需要

  • 创建一个数组

  • 把你所有的标记按成一排

  • 将所有标记添加到阵列后,创建一个
    featureGroup
  • 将标记数组添加到
    featureGroup
    ,然后缩放到其边界
下面是修改后的代码

var markerArray = []; //create new markers array

for (var i = 0; i < addressPoints.length; i++) {
    var a = addressPoints[i];
    var title = a[2];
    var marker = L.marker(new L.LatLng(a[0], a[1]), { title: title });
    marker.bindPopup(title);
    markers.addLayer(marker);

    markerArray.push(marker); //add each markers to array

    if(i==addressPoints.length-1){//this is the case when all the markers would be added to array
        var group = L.featureGroup(markerArray); //add markers array to featureGroup
        map.fitBounds(group.getBounds());   
    }
}
var-markerArray=[]//创建新的标记数组
对于(变量i=0;i
这是工作票