谷歌地图中的动态内容api v3多个自定义标记上的信息窗口

时间:2012-07-17 08:06:33

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

我有以下js实现了一个带有循环自定义标记的谷歌地图。我需要每个标记具有不同的信息窗口,因此当您单击标记时,您将获得相关的内容。在那一刻它没有打开infowindow并且没有在控制台中给我一个错误

infowindow = new google.maps.InfoWindow();

    for(var i=0; i<google_map_item.length; i++)
    {
        latlon = new google.maps.LatLng(google_map_item[i].lat, google_map_item[i].lon)
        bounds.extend(latlon);
        var iconcolor = google_map_item[i].iconColor;
        marker = new google.maps.Marker({
            map: map,
            position: latlon,
            icon: "https://chart.googleapis.com/chart?chst=d_map_pin_letter_withshadow&chld=" + (i + 1) + "|"+iconcolor+"|000000",
            type: 'flat',
            icon_color: '#ff0000', 
            label_color: '#ffffff', 
            width: '20', 
            height: '20', 
            label_size: '11',
                            clickable: true
        });

                    google.maps.event.addListener(marker, 'click', function() {
                        //marker.info.open(map, this);
                        infowindow.setContent(this.latlon);
                        infowindow.open(map, this);
                    });


        map.fitBounds(bounds);
    }

2 个答案:

答案 0 :(得分:5)

var marker3 = new google.maps.Marker({
          map: map,                                                        
          icon: 'miniMarker.png',
          info: destArr[i][9],
          position: new google.maps.LatLng(destArr[i][7], destArr[i][8])
});
var infowindow3 = new google.maps.InfoWindow();
google.maps.event.addListener(marker3, 'mouseover', function () {
        infowindow3.setContent(this.info);                              
        infowindow3.open(map, this);                        
});

包含20多个标记和信息窗口的工作示例

答案 1 :(得分:0)

标记数组中的引用不正确,如此类似问题所述

Google Maps - Multiple markers - 1 InfoWindow problem