-1
當我點擊標記時,它顯示一個信息窗口,但不在正確的標記中。 它確實顯示了正確的窗口,但顯示了錯誤的標記。MarkerWithLabel僅在一個標記中顯示信息窗口
我只在使用MarkerWithLabel時遇到此問題。一個正常的標記正常工作。
獲取JSON
// Load markers
function loadMarkers() {
$.ajax({
url: '/Home/GetJsonMarkers'
}).done(function (data) {
$.each(data, function (index, value) {
handleMarkerAndWindow(value);
});
});
}
創建標記並添加監聽器(包括標誌和窗口全部功能)
function handleMarkerAndWindow(jsonMarker) {
// Create and get marker
var marker = createMarker(jsonMarker.Latitude, jsonMarker.Longitude, jsonMarker.Content);
// Add marker to map
marker.setMap(googleMap);
// Create info window
var infoMarkerWindow = createAndReturnMarkerWindow(jsonMarker.Content);
// Add to array
addMarkerAndWindow(marker, infoMarkerWindow);
// Add listener to show the info window on marker click
google.maps.event.addListener(marker, 'click', function() {
// Close all windows
closeAllMarkerWindows();
// Open window
infoMarkerWindow.open(googleMap, marker);
});
}
創建標記
// Creates a new marker
function createMarker(latitude, longitude, title) {
return new MarkerWithLabel({
position: createPosition(latitude, longitude),
title: title,
draggable: false,
raiseOnDrag: false,
labelContent: "$425K",
labelAnchor: new google.maps.Point(22, 0),
labelClass: "labels", // the CSS class for the label
labelStyle: { opacity: 0.75 },
labelInBackground: false,
map : googleMap
});
}