Como manter a única janela de informações aberta ao mesmo tempo no Google map V3?

Eu sei que esta é uma pergunta repetida,

Eu estou usando o google map v3 no meu aplicativo baseado na web do Django. Onde eu estou usandoMarkers, Infowindow and polyline. Tudo funciona bem, exceto quando clico em um marcador para mostrar o conteúdo pela janela de informações, a janela de informações aberta anteriormente não é fechada.

Estou postando o código do meu mapa (somente a parte do script ou quais são úteis):

var marker = add_marker(flightPlanCoordinates[i][0], flightPlanCoordinates[i][1],"Event Detail",myHtml);

AquimyHtml é uma variável que contém o conteúdo da janela Info. Eu não defini a variável aqui. Então ignore isso.

    marker.setMap(map);
    }

    var flightPath = new google.maps.Polyline({
                 path: flightPlanCoordinatesSet,
                 strokeColor: "#FF0000",
                 strokeOpacity: 1.0,
                 strokeWeight: 2
                  });
    flightPath.setMap(map);
}

function add_marker(lat,lng,title,box_html) {
var infowindow = new google.maps.InfoWindow({
    content: box_html
});

var marker = new google.maps.Marker({
      position: new google.maps.LatLng(lat,lng),
      map: map,
      title: title
});

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

return marker;
}

questionAnswers(1)

QuestionSolution

Em vez de várias informações, use apenas uma instância.

Ao clicar em um marcador, primeiro feche a janela de informações, defina o novo conteúdo e abra a infoWindow.

function add_marker(lat,lng,title,box_html) 
{
  //create the global instance of infoWindow 
  if(!window.infowindow)
  {
    window.infowindow=new google.maps.InfoWindow();
  } 

  var marker = new google.maps.Marker({
      position: new google.maps.LatLng(lat,lng),
      map: map,
      title: title
  });

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

  return marker;
}
 Dr.Molle08 de jul de 2015 14:09
@Blue Bells: você pode postar um link para a página?
 Dr.Molle11 de jul de 2012 10:40
A função add_marker modificada acima deve funcionar.
 Amit Pal11 de jul de 2012 10:20
Obrigado pela resposta, eu tentei com esta opção. mas não funcionou.Pode ser que eu estava errado seria possível para você me mostrar pseudo código para adicionar método ouvinte
 Ramesh Murugesan08 de jul de 2015 14:01
@ Dr.Molle eu tenho vários marcadores emLatLngBounds se eu criar a instância global do infoWindow o último infowinodow mostra todo o ponteiro

yourAnswerToTheQuestion