在 Google Maps API 版本 2 中,刪除所有地圖標記就像使用 map.clearOverlays() 一樣簡單。但是,此方法在 API v3 中不再可用。本綜合指南將引導您從地圖中有效刪除所有標記的步驟:
先宣告一個全域變數來儲存標記陣列:
var markersArray = [];
建立一個名為clearOverlays()的函數來迭代標記陣列並將每個標記的地圖設定為null:
function clearOverlays() { for (var i = 0; i < markersArray.length; i++) { markersArray[i].setMap(null); } markersArray.length = 0; }
OR
或者,您可以將該函數定義為google.maps.Map 的原型方法:
google.maps.Map.prototype.clearOverlays = function() { for (var i = 0; i < markersArray.length; i++) { markersArray[i].setMap(null); } markersArray.length = 0; }
在呼叫之前clearOverlays()函數,請確保在將每個標記新增至地圖時將其推送到markerArray。請記得為每個標記新增事件監聽器以實現互動:
markersArray.push(marker); google.maps.event.addListener(marker, "click", function() {});
最後,每當需要刪除所有標記時,請呼叫clearOverlays()或map. clearOverlays()函數地圖上的標記。
使用這些步驟,您現在可以有效地從 Google Maps API v3 中刪除所有標記申請。
以上是如何從 Google Maps API v3 應用程式中刪除所有標記?的詳細內容。更多資訊請關注PHP中文網其他相關文章!