有一个很大的问题,现在搜索几周。我有很多标记和每个标记的大InfoWindows,大部分时间都没有完全显示在我的地图范围内。如何自动移动地图并在中心显示这些大的InfoWindow?此外,我想不仅在中心显示它(因为InfoWindows比宽视图更长),但是,例如,在中心的较低位置(居中,但在地图边界上接近底部)。我希望你明白,我的意思。
此外,我的InfowWindow在点击其中的链接后变得更大了,甚至更大(我的上帝;-),所以我也必须处理这个。
答案 0 :(得分:0)
您可能知道InfoWindow有一个选项disableAutoPan
,但它默认为false,因此您应该在打开时自动查看它。如果你想要它在中心,那么你最好的选择是在打开InfoWindow之前的点击事件中,首先将地图置于标记中心。打开的autopan应自动处理并根据需要调整视口以适应InfoWindow。
//marker and map defined somewhere already
var iw = new google.maps.InfoWindow();
google.maps.event.addListener(marker, 'click', function(){
map.setCenter(marker.getPosition());
iw.setContent('your content');
iw.open(map,marker);
});