Im Folgenden werde ich Ihnen eine Methode zum Löschen des angegebenen Overlays basierend auf der Baidu Maps API vorstellen. Sie hat einen guten Referenzwert und ich hoffe, dass sie für alle hilfreich sein wird.
Kürzlich habe ich an einem Projekt mit der Baidu Map API gearbeitet, bei dem ich Markierungen und Polylinien gleichzeitig auf der Karte anzeigen musste und die Polylinien basierend auf Klicks angezeigt oder gelöscht werden mussten Ich bin auf das Problem beim Löschen des angegebenen Overlays gestoßen und konnte es nach mehreren Suchvorgängen nicht finden. Durch meine eigenen Überlegungen habe ich einen Weg gefunden, dieses Problem zu lösen, und es veröffentlicht, um es mit allen zu teilen. Okay, kommen wir zum Punkt:
Es gibt zwei Möglichkeiten, Overlays zu löschen: map.removeOverlay() oder map.clearOverlays() Die clearOverlays(). Mit der Methode „removeOverlay()“ werden die Überlagerungen auf einmal verschoben. Offensichtlich möchte ich jeweils nur eine Art von Polylinien-Überlagerung entfernen, und keine der beiden Methoden ist anwendbar.
Baidu-Demo (http://developer.baidu.com/map/jsdemo.htm#c1_17) enthält ein Beispiel für removeOverlay() wie folgt:
function deletePoint(){ var allOverlay = map.getOverlays(); for (var i = 0; i < allOverlay.length -1; i++){ if(allOverlay[i].getLabel().content == "我是id=1"){ map.removeOverlay(allOverlay[i]); return false; } } }
erfolgt durch Durchlaufen aller Überlagerungen Filtern Sie die zu entfernenden Überlagerungen.
Für eine Art von Überlagerungen können Sie beim Hinzufügen von Überlagerungen Einschränkungen festlegen Overlay: Legen Sie „disableMassClear()“ für Overlays fest, die nicht entfernt werden müssen. Das offizielle Website-Dokument erklärt Folgendes:
disableMassClear()
marker.disableMassClear();
Schritt 2: Löschen Sie das zu seinde Overlay entfernt, hier müssen Sie alle Polylinien löschen, ohne Markierungen zu löschen. Jetzt können Sie direkt
map.clearOverlays();
enableMassClear()
none erlaubt die Überlagerung Wird in der Karte gelöscht. (Neu seit 1.1) Jeder Marker muss jedoch wiederhergestellt werden, also muss er überquert werden: Eine einfache Einrichtung in drei Schritten kann die angegebene Art der Abdeckung effektiv betreiben. Ich habe das Obige für Sie zusammengestellt und hoffe, dass es Ihnen in Zukunft hilfreich sein wird. Verwandte Artikel: Das obige ist der detaillierte Inhalt vonWie lösche ich das angegebene Overlay mithilfe der Baidu Maps API?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!var allOverlay = map.getOverlays();
for (var i = 0; i < allOverlay.length; i++) {
allOverlay[i].enableMassClear();
}