我一直在寻找解决此问题的方法,但似乎找不到解决此问题的方法。我得到的最接近的是这个线程。但这不起作用。
我正在尝试做的是基于一组可以正常工作的标记运行 fitbounds 。但我也想根据用户位置(plunk 中的弹跳标记)将地图居中,并仍然将所有标记保留在地图视图中。如果我尝试在 fitBounds 之后设置中心,则某些标记位于地图视图之外。有没有一些巧妙的方法可以结合这两个功能? 这是说明问题的笨拙。
function initialize() {
var userCenter = new google.maps.LatLng(51.508742, -0.120850);
var userCenterMarker = new google.maps.Marker({
position: userCenter
});
userCenterMarker.setAnimation(google.maps.Animation.BOUNCE);
var mapProp = {
center: userCenter,
zoom: 12,
mapTypeId: google.maps.MapTypeId.ROADMAP
};
var map = new google.maps.Map(document.getElementById("googleMap"), mapProp);
var bounds = new google.maps.LatLngBounds();
var markers = getMarkers();
$(markers).each(function() {
bounds.extend(this.position);
this.setMap(map);
});
userCenterMarker.setMap(map);
map.fitBounds(bounds);
setTimeout(function() {
map.setCenter(userCenter);
}, 1500);
}
谢谢!