Haben ein seltsames Problem. Ich habe eine Karte mit verschiedenen Markierungen eingerichtet. Auf dem InfoWindow können Sie klicken, um "Richtungen zu erhalten", die ein onClick auslöst. Erstmalige Route wird korrekt angezeigt, aber wenn Sie auf einen anderen Marker klicken und nach dem Weg fragen ... wird die vorherige Route nicht von der Karte gelöscht Neue ist gezeichnetklare Richtung Route auf Google Maps
Ich habe schon etwas versucht, genauer gesagt Lösungen auf dieser stackoverflow question zur Verfügung gestellt, aber nichts scheint zu funktionieren.
Mein Code ist dies:
function getDirections(id) {
var directionsDisplay = new google.maps.DirectionsRenderer;
var directionsService = new google.maps.DirectionsService;
var start = document.getElementById('pos1').innerHTML;
var end = document.getElementById('pos'+id).innerHTML;
end = end.slice(0, -1);
end = end.substring(1);
directionsDisplay.setMap(null);
directionsDisplay.setMap(map);
directionsDisplay.setPanel(document.getElementById('directions'));
directionsService.route({
origin: start,
destination: end,
travelMode: google.maps.TravelMode.DRIVING
}, function(response, status) {
if (status === google.maps.DirectionsStatus.OK) {
directionsDisplay.setDirections(response);
console.log(response);
} else {
window.alert('Directions request failed due to ' + status);
}
});
disableMovement(false);
infoWindow.close();
var control = document.getElementById('directions');
control.style.display = 'block';
map.controls.push(control);
}
Und auf diesem Bild kann man sehen, was ich bin immer ... die vorherige Route nicht von der Karte gelöscht wurde, bevor die neue gezogen wurde.