Google Maps JavaScript API标记&信息窗口

时间:2015-12-18 11:03:45

标签: javascript google-maps

我在open对象上遇到infoWindow方法的问题。

我想动态设置我的所有地图实用程序对象但是当调用open方法时,它会引发错误,因为关联的infoWindow对象是undefined

这是我的代码:

    // Markers & infoWindows
    var markers = [];
    var infoWindows = [];

    for(var i=0; i<myList.length; i++) {
        markers.push(
            new google.maps.Marker({
                position: myList[i].coord,
                map: map,
                title: myList[i].city
            })
        );
        infoWindows.push(
            new google.maps.InfoWindow({
               content: myList[i].address
            })
        );
        markers[i].addListener('click', function() {
            infoWindows[i].open(map, markers[i]);
        });
    }

[其中myList只是JSON格式化对象的结果。 ]

所有标记和infoWindows都设置得很好。我可以访问他们的属性并将它们打印到控制台。

但正如我所说,infoWindows[i]输入未定义,因此找不到open方法。相反,我可以访问并打印此content对象的infoWindows[i]属性。对我来说似乎很奇怪......

如果有人能够解释我,我会很高兴:)

0 个答案:

没有答案