在页面加载时打开多个Google Map标记信息框

时间:2015-02-09 19:16:38

标签: google-maps google-maps-api-3

我试图获取它,以便我的自定义Google地图上的信息框在页面加载时打开。

我目前有这个:

 var infowindow = new google.maps.InfoWindow();
        var marker, i;

        for (i = 0; i < locations.length; i++) {
          marker = new google.maps.Marker({
            position: new google.maps.LatLng(locations[i][1], locations[i][2]),
            map: map,
            icon: pinimage
          });

                infowindow.setContent(locations[i][0]);
                infowindow.open(map, marker);

只打开一个信息框而不打开另外两个信息框(总共有三个)。我不确定我错过了什么。

1 个答案:

答案 0 :(得分:0)

我认为它是因为你的infowindow需要在你的for循环中,因为它的外部,只有一个会被创建,所以它被用来的内容和标记会在循环的每次迭代中被覆盖。

它需要在创建标记之后。

var infowindow, marker, i;
for (i = 0; i < locations.length; i++) {
    marker = new google.maps.Marker({
        position: new google.maps.LatLng(locations[i][1], locations[i][2]),
        map: map,
        icon: pinimage
    });
    infowindow = new google.maps.InfoWindow();
    infowindow.setContent(locations[i][0]);
    infowindow.open(map, marker);
}