我在 javascript 中遇到了 Google Map 的问题,我无法使所有标记都符合界限。只有第一个标记可见。这是控制台中抛出的错误:
未捕获的异常:InvalidValueError:不是 LatLngBounds 或 LatLngBoundsLiteral:不是对象
这是我正在使用的代码:
var map = new google.maps.Map(document.getElementById('map'), {
center: {lat: parseFloat(lat), lng:parseFloat(lng)},
zoom: 11
});
var bounds = new google.maps.LatLngBounds();
for(var i = 0; i < coordinates.length; i++){
var coords = {lat: parseFloat(lat), lng:parseFloat(lng)}
var marker = new google.maps.Marker({position: coords, map: map});
var infowindow = new google.maps.InfoWindow();
infowindow.setContent(lat);
infowindow.open(map, marker);
bounds.extend(marker.position);
}
map.setCenter(bounds.getCenter());
map.fitBounds(bounds);
我在地图上有 4 个标记,但地图被缩放并以添加的最后一个为中心,如下图所示:
如果我缩小地图,我可以看到所有其他标记,但 fitbounds 无法使所有标记都适合边界。