Código:
{
cantidad: 2,
lugares: {
1: {
id_lugar: "1",
nombre_lugar: "Municipalidad de Rawson",
latitude: "-43.2999997",
longitude: "-65.1052474",
icono: "gov"
},
2: {
id_lugar: "4",
nombre_lugar: "Honorable Legislatura de la Provincia del Chubut",
latitude: "-43.297535",
longitude: "-65.10604269999999",
icono: "gov"
}
}
}
El codigo JS (jQuery) es este:
Código
$.getJSON( 'ajax.php?action=list&categoria=gov', function(json){ for(var i=1; i<=json.cantidad; i++) { var marker = new google.maps.Marker({ position:new google.maps.LatLng(json['lugares'][i]['latitude'], json['lugares'][i]['longitude']), map:map, title:json['lugares'][i]['nombre_lugar'] }); var infowindow = new google.maps.InfoWindow({ content:json['lugares'][i]['nombre_lugar'] }); Marcadores[i] = marker; Informacion[i] = infowindow; google.maps.event.addListener(Marcadores[i] , "click", function(){//# Informacion[i].open(map,Marcadores[i] ); });//# } } );
Pero no me funciona, al parecer no me genera el listener del evento click sobre cada uno de los marcadores para abrir el correspondiente InfoWindow. El caso es que si comento las lineas indicadas con //#, para que los IW se abran automaticamente sin darle click al marcador si funciona, pero lo que yo quiero es que esten ocultos y mostrarlos cuando se hace click.
Alguna sugerencia?
PD: Tanto el array Marcadores como Informacion estan incializados como arrays vacios globales al principio del script