0

我有以下代码可以放大谷歌地图并在您单击标记时显示信息窗口...

google.maps.event.addListener(marker, "click", function () {
    infowindow.setContent(this.html);
    infowindow.open(map, this);
    map.setCenter(this.position);
    if(map.getZoom() < 10 || map.getZoom() > 10) {
        map.setZoom(10);
    }
});

但是,地图大小取决于用户浏览器窗口的大小,有时 - 当地图由于浏览器窗口大小而不高时 - 信息窗口会从顶部消失。我想要做的是使标记和信息窗口居中,而不仅仅是标记。

有任何想法吗?

4

1 回答 1

1

您可以获取信息窗口的高度,然后将地图向下平移一半。

map.panBy(0, info_window_height / 2);

如果地图中心的标记/信息窗口不是严格要求,还可以查看 SmartInfoWindow 演示:http ://gmaps-samples-v3.googlecode.com/svn/trunk/smartinfowindow/smartinfowindow.html

于 2013-08-29T17:17:32.800 回答