[英]How to only display one info window when click on marker?
var i;
var marker = [];
var infowindow = [];
for(i=0; i<results.length ; i++ ){
marker[i] = new google.maps.Marker({
position: results[i].geometry.location,
map: map
});
infowindow[i] = new google.maps.InfoWindow({
content: "test" + i
});
google.maps.event.addListener(marker[i], 'click', function(num) {
return function() {
infowindow[num].open(map, marker[num]);
}
}(i));
}
单击每个标记(test1,test2,test3 ....)时,我编写了一些具有不同信息窗口内容的代码,即使我单击另一个标记,信息窗口也会保留在屏幕上。
单击每个标记时如何仅显示一个信息窗口?
只要记住当前打开的窗口,并在需要打开另一个窗口时将其关闭即可,类似于以下所示:
var curInfoWindow;
google.maps.event.addListener(marker[i], 'click', function(num) {
return function() {
if (curInfoWindow != null) {
curInfoWindow.close();
}
curInfoWindow = infowindow[num];
infowindow[num].open(map, marker[num]);
}
}(i));
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.