2010-05-28 8 views
20

Um einen normalen Marker aus einer Karte zu entfernen, müssen Sie einfach marker.setMap (null) aufrufen, aber bei der Implementierung der Google Maps-Richtungsdienste werden automatisch die Marker A und B hinzugefügt die Karte (Berechnung der Richtungen von Punkt A zu Punkt B). Ich habe keine Kontrolle über diese Marker, daher kann ich sie nicht auf normale Weise entfernen. Wie kann ich diese Markierungen entfernen (ich habe stattdessen benutzerdefinierte Markierungen auf der Karte)?Entfernen von Richtungsmarkierungen aus dem Google Maps-API V3

+0

Ich habe genau die gleiche Frage. – Natim

+0

Ist es möglich, dasselbe zu tun, aber mit der API v2? – Jonathan

Antwort

33

Setzen Sie die Option suppressMarkers auf true, wenn Sie Ihr DirectionsRenderer-Objekt erstellen, und dann werden die Markierungen nicht angezeigt. Sie können auch den Stil oder das Symbol der Markierungen ändern. Weitere Eigenschaften, die Sie festlegen können, finden Sie in der API-Spezifikation für DirectionsRendererOptions.

... 
    directionsDisplay = new google.maps.DirectionsRenderer({suppressMarkers: true}); 
    ... 

EDIT: Es sieht aus wie die API vor ein wenig, da meine ursprüngliche Antwort fast 6 Jahren geändert, so dass die Antwort von @ joni-Jones ist jetzt der richtige Weg. Ich habe mein Beispiel oben angepasst, um das zu reflektieren.

+0

Das macht den Trick! Danke – Natim

+0

Ja, genau das habe ich gesucht. Vielen Dank! – anonymous

+1

Es gibt keine dokumentierte '.suppressMarkers'-Eigenschaft des DirectionsRenderer. – geocodezip

33

Ich hatte ein ähnliches Problem. Die vorherige Lösung hat mir nicht geholfen. Aber ich habe es versucht:

var directionsDisplay = new google.maps.DirectionsRenderer({suppressMarkers: true});
Und es ist Arbeit.