当我点击标记时,它会显示一个信息窗口,但不会显示在右侧标记中。 它确实显示正确的窗口,但标记错误。
当我使用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
});
}
答案 0 :(得分:0)