Javascript 如何平移和缩放到由标记定义的地图边界
当我有一个标记时,它应该放大到标记的地图(高缩放级别?放大更多) 当我有超过1个标记时,它应该检测所有标记(顶部、右侧、底部和左侧)定义的边,并放大此标记 我有以下代码:Javascript 如何平移和缩放到由标记定义的地图边界,javascript,leaflet,Javascript,Leaflet,当我有一个标记时,它应该放大到标记的地图(高缩放级别?放大更多) 当我有超过1个标记时,它应该检测所有标记(顶部、右侧、底部和左侧)定义的边,并放大此标记 我有以下代码: lMap.fitBounds(new L.LatLngBounds(this.bounds)); 下一步是什么 var zoom = lMap.getBoundsZoom(new L.LatLngBounds(this.bounds)); lMap.setZoom(zoom); 或者某种内部平移/缩放方法?您可以创建一个边
lMap.fitBounds(new L.LatLngBounds(this.bounds));
下一步是什么
var zoom = lMap.getBoundsZoom(new L.LatLngBounds(this.bounds));
lMap.setZoom(zoom);
或者某种内部平移/缩放方法?您可以创建一个边界对象
var bounding = new google.maps.LatLngBounds();
添加您的标记
bounding.extend(myMarker1LatLng);
bounding.extend(myMarker2LatLng);
...
然后使用该边界对象设置地图视图
map.fitBounds(bounding);
我很肯定它能起作用
var bounds = new google.maps.LatLngBounds();
for (i = 0; i < markers.length; i++) {
var data = markers[i]
if (data.lat != '' && data.lng != '') {
var myLatlng = new google.maps.LatLng(data.lat, data.lng);
var marker = new google.maps.Marker({
position: myLatlng,
icon: iconBase,
map: map,
title: data.Name
});
}
bounds.extend(myLatlng);
这应该说明如何使用
map.fitBounds
来做您想做的事情。基本上,只需传入一组LatLng对象。我只是在使用传单api
map.setCenter(bounds.getCenter(), map.fitBounds(bounds));