Google Maps API v3: Wie entfernt man alle Markierungen?

Wenn ich in Google Maps API v2 alle Kartenmarkierungen entfernen wollte, konnte ich das einfach tun:

map.clearOverlays();

Wie kann ich dies in Google Maps API v3 tun?

Wenn ich mir die Referenz-API ansehe, ist das für mich unklar.

Es scheint, dass es in V3 noch keine solche Funktion gibt.

Die Leute schlagen vor, Verweise auf alle Marker auf der Karte in einem Array zu speichern. Und dann, wenn Sie sie alle löschen wollen, einfach Schleife durch das Array und rufen Sie .setMap(null) Methode auf jeder der Referenzen.

Siehe diese Frage für weitere Informationen/Code

Meine Version:


google.maps.Map.prototype.markers = new Array();

google.maps.Map.prototype.getMarkers = function() {
    return this.markers
};

google.maps.Map.prototype.clearMarkers = function() {
    for(var i=0; i
Kommentare (5)

google.maps.Map.prototype.markers = new Array();

google.maps.Map.prototype.addMarker = function(marker) {
    this.markers[this.markers.length] = marker;
};

google.maps.Map.prototype.getMarkers = function() {
    return this.markers
};

google.maps.Map.prototype.clearMarkers = function() {
    for(var i=0; i
Kommentare (5)

Die Funktion "set_map", die in beiden Antworten gepostet wurde, scheint in Google Maps v3 API nicht mehr zu funktionieren.

Ich frage mich, was passiert ist

Aktualisierung:

Es scheint, dass Google seine API so geändert hat, dass "set_map" nicht "setMap" ist.

http://code.google.com/apis/maps/documentation/v3/reference.html

Kommentare (0)