我想阻止地图的顶部超过纬度85.似乎没有直接的API来执行此操作,我发现的是关于在地图中心设置边界,使用setCenter
功能。但是,由于地图投影造成的变形,我找不到应该移动中心以使顶部保持在界限范围内。
google.maps.event.addListener(map, 'bounds_changed', function() {
var top = map.getBounds().getNorthEast().lat();
if (top > 85) {
var c = map.getCenter();
map.setCenter({lat: c.lat() - (top - 85), lng: c.lng()});
}
});
这里偏移量(top - 85)
不够大,这会导致令人烦恼的永无止境的重新定位,因为改变位置不会足够地纠正位置,并且会再次调用该函数。我想要的是一个明确的截止点,地图不会高于85纬度。