Хранить все информационные окна в массиве.И используйте следующую функцию, чтобы закрыть текущее открытое окно.
IE:
var infoWindow = new google.maps.InfoWindow;
infoWindowArray.push(infoWindow);
function resetInfoWindow(){
if(infoWindowArray){
for(i in infoWindowArray){
infoWindowArray[i].close();
}
}
}
Вызовите функцию resetInfoWindow()
следующим образом:
google.maps.event.addListener(marker, 'click', function() {
resetInfoWindow();
infoWindow.setContent(str1);
infoWindow.open(map, marker);
});