Я посетил довольно много ответов на переполнение стека по этой теме, и ни один из ответов не работает для меня. Я добавляю слушателей к объектам в цикле for, но весь мой код прослушивателя применяется только к последнему циклу. Я дочитал о шкафах и это был подход, который я пытался, но я все еще возникают проблемы:Корпуса и петли в JavaScript
for (var i = 0; i < beaches.length; i++) {
var beach = beaches[i];
var marker = new google.maps.Marker({
position: {lat: beach[1], lng: beach[2]},
map: map,
icon: image,
shape: shape,
title: beach[0],
zIndex: beach[3]
});
var contentString = contentstrings[i];
function makeItHappenDelegate() {
return function(){
var infowindow = new google.maps.InfoWindow({
content: contentString
});
infowindow.open(map, marker);
}
};
marker.addListener('click',makeItHappenDelegate());
}
, что означает, что функция makeItHappenDelegate() будет применяться в качестве функции для выполнения всех моих маркеров.
Любая помощь будет оценена по достоинству.
Я не думаю, что вы скопировали это решение правильно. – Mathletics