0

我正在使用波纹管代码在我的地图中打开一个信息窗口

 //populate the  infowindow to defined marker map point
 function assignmarkerclick(marker1, index, message) {
     google.maps.event.addListener(marker1, 'click', function () {
         if (!infowindow) {
             infowindow = new google.maps.InfoWindow();
         }
         infowindow.setContent(message);
         infowindow.open(map, marker1);
     });
 }

// 显示指定标记的信息窗口

function showMarker(index) {

    new google.maps.event.trigger(marker[index], 'click');
}

因此,当我第一次单击“显示点”(假设我正在调用 showMarker() javascript 函数“显示点链接”单击事件)链接时,信息窗口不会打开,当我第二次单击“显示点”链接时信息窗口将打开,有人以前有过这个错误吗?有人可以帮我解决这个问题吗?

谢谢

4

1 回答 1

3

在函数外部将您的 infowindow 对象创建为全局变量:

// global var
var infowindow = new google.maps.InfoWindow();

 function assignmarkerclick(marker1, index, message) {
     google.maps.event.addListener(marker1, 'click', function () {
         infowindow.setContent(message);
         infowindow.open(map, marker1);
     });
 }
于 2012-11-23T10:42:04.067 回答