NOTA: sto usando v3 della API di Google MapsAPI di Google Maps v3 l'aggiunta di un InfoWindow per ogni marcatore
Sto cercando di aggiungere una finestra di informazioni per ogni marcatore ho messo sulla mappa. Attualmente sto facendo questo con il seguente codice:
for (var i in tracks[racer_id].data.points) {
values = tracks[racer_id].data.points[i];
point = new google.maps.LatLng(values.lat, values.lng);
if (values.qst) {
var marker = new google.maps.Marker({map: map, position: point, clickable: true});
tracks[racer_id].markers[i] = marker;
var info = new google.maps.InfoWindow({
content: '<b>Speed:</b> ' + values.inst + ' knots'
});
tracks[racer_id].info[i] = info;
google.maps.event.addListener(marker, 'click', function() {
info.open(map, marker);
});
}
track_coordinates.push(point);
bd.extend(point);
}
Il problema è quando clicco su un marcatore solo visualizza la finestra di informazioni per l'ultimo marcatore aggiunto. Inoltre, per essere chiari, appare la finestra delle informazioni accanto all'ultimo indicatore e non il marcatore cliccato. Immagino che il mio problema è nella parte addListener ma non sono post-itativo. Qualche idea?
Puoi spiegare di più su dove devo inserire questo snippet di codice? È fatto invece di loop o prima del ciclo sono un po 'confuso. – uday
È necessario inserire lo snippet di codice _inside_ il ciclo for;) – Tilt