У меня есть код здесь: http://bitbucket.org/natim/lo53_tp1/src/tip/part3/camions/medias/js/tracking.js
Это я использую, чтобы получить некоторую информацию о направлении грузовых автомобилей.
Проблема возникает из функции, определенной в цикле for, как этот:
...
for(i = 0; i < nb_trucks; i++)
{
...
contentString = '<div id="content">'+ trucks[i]['name'] + '</div>';
current_window = new google.maps.InfoWindow({
content: contentString
});
infosWindow.push(current_window);
current_marker = new google.maps.Marker({
map: map,
position: new google.maps.LatLng(trucks[i]['end']['lat'], trucks[i]['end']['lon']),
draggable: false,
title: trucks[i]['name']
});
markers.push(current_marker);
google.maps.event.addListener(current_marker, 'click', function() {
current_window.open(map, current_marker);
});
}
В этом коде вы видите последний блок
google.maps.event.addListener(current_marker, 'click', function() {
current_window.open(map, current_marker);
});
И моя проблема в том, что current_marker в параметрах addListener отличается от того, что внутри функции.
Current_window и current_marker внутри функции переопределяются при каждом повороте цикла.
Как я могу сделать это правильно?
Спасибо