Ich versuche, ein Infofenster in Google Maps anzuzeigen. Es zeigt perfekt an, wenn Sie über einen Marker fahren, wird ein Infofenster geladen, aber die Karte springt in das Fenster. Ich möchte nicht, dass sich die Karte bewegt, sondern vielmehr ihre Position entsprechend der Karte einstellt. Booking.com hat so etwas.Verhindern, dass Google Maps nach der Anzeige von Infowindow verschoben wird
EDIT: Hinzugefügt meinen Code
Hier ist die abgespeckte Version von meinem Code. Ich bekomme alle Informationen von einem AJAX Service und dieser Service gibt response
zurück (was auch weitere Informationen enthält).
$.ajax({
url: 'URL',
dataType: "json",
type: "GET",
success: function(response) {
// delete all markers
clearOverlays();
var infowindow = new google.maps.InfoWindow();
for (var i = 0; i < response.length; i++) {
item = response[i];
var marker = new google.maps.Marker({
position: new google.maps.LatLng(item.lat, item.lng),
map: map,
url: item.detail_url
});
markersArray.push(marker);
// display infowindow
google.maps.event.addListener(marker, "mouseover", (function(marker, item) {
return function() {
infowindow.setOptions({
content: 'SOME CONTENT HERE FOR INFOWINDOW'
});
infowindow.open(map, marker);
}
})(marker, item));
// remove infowindow
google.maps.event.addListener(marker, 'mouseout', function() {
infowindow.close();
});
// marker click
google.maps.event.addListener(marker, 'click', function() {
window.location.href = marker.url;
});
}
}
});
Wie Sie unten sehen können, zeigt das erste Bild das Infofenster am unteren Rand des Marker angezeigt, während zweite das Infofenster auf der Markierung angezeigt wird, zeigt. Die Karte bewegt sich nicht, sondern Infowindow setzt ihre Position innerhalb der Grenzen der Karte.
Was macht Ihr Code wie diese Funktionalität Blick zu implementieren? – geocodezip
Mein Javascript-Code hinzugefügt. –