Я использую googlemaps api, чтобы поместить некоторый маркер на карты. Однако по какой-то причине мой infoWindows для всех маркеров открывается по умолчанию Даже если нет клика. Я не знаю, почему это происходит, я пытался искать в других местах ниже код выглядит нормально (по крайней мере для меня)InfoWindows открывается без нажатия
function PoplatePoints(data) {
var output = new google.maps.LatLng(25.4486, 78.5696);
var mapOptions = {
center: output,
zoom: 7
};
var map = new google.maps.Map(document.getElementById('map-canvas'),
mapOptions);
//var contentString = [];
// var infowindow = [];
for (var i = data.length - 1; i >= 0; i--) {
var contentString = 'Hello This is me';
var infowindow = new google.maps.InfoWindow();
var icon_new = "/static/beyond/img/Green.png";
var marker = new google.maps.Marker({
position: new google.maps.LatLng(data[i].lat, data[i].long),
map: map,
icon: icon_new
});
google.maps.event.addListener(marker, 'click', (function(mm,tt) {
infowindow.setContent(tt)
infowindow.open(map, mm)
})(marker, contentString));
}
}
потому что вы немедленно выполняете функцию обратного вызова, а не передаете ссылку на нее –