Tôi có một phần đang hoạt động của google maps javascript, tôi đã gặp sự cố.API bản đồ của Google v3 - Thêm nhiều infowindows
Bây giờ vấn đề tôi đã có là chỉ có một infowindow được hiển thị, cuối cùng. Tôi tìm thấy một giải pháp trên một thread stack mà làm việc ra ngoài. Nhưng tôi không thể tìm ra lý do tại sao. Tôi khá mới với Javascript vì vậy tôi đã hy vọng một ai đó có thể giải thích cho tôi những gì thay đổi và làm thế nào.
Dưới đây là đoạn code làm việc:
function setMarkers(map, locations){
for(var i = 0; i < locations.length; i++){
var marker = locations[i];
var latLng = new google.maps.LatLng(locations[i][1], locations[i][2]);
var content = locations[i][0];
var infowindow = new google.maps.InfoWindow();
marker = new google.maps.Marker({
position:latLng,
map: map
});
google.maps.event.addListener(marker, 'click', function(content){
return function(){
infowindow.setContent(content);
infowindow.open(map, this);
}
}(content));
}
}
Đây là mã ban đầu bị phá vỡ là (Tôi sẽ dán duy nhất mà thay đổi):
google.maps.event.addListener(marker, 'click', function(){
infowindow.setContent(content);
infowindow.open(map, marker);
});
Bây giờ những gì tôi muốn biết nếu bạn rất tử tế, là:
chức năng trả lại fn phân phát và
nội dung được thêm vào
(content)
vào cuốiaddListener
(}(content));)
làm theo như tôi thấy nội dung đã được đặt trong thuộc tínhsetContent
.
Cảm ơn!
Cảm ơn bạn đã chỉnh sửa, dễ dàng hơn nhiều trong mắt. Định dạng ngăn xếp vẫn còn hơi mới đối với tôi. – Russ
Bạn có thể muốn thay đổi tiêu đề câu hỏi của mình, có vẻ quá chung chung. – filipvkovic