首頁 >web前端 >js教程 >如何刪除 Google Maps API v3 中的所有標記?

如何刪除 Google Maps API v3 中的所有標記?

Linda Hamilton
Linda Hamilton原創
2024-11-24 17:48:22675瀏覽

How to Remove All Markers in Google Maps API v3?

在Google Maps API v3 中刪除標記:更新的方法

在Google Maps API v2 中,使用map.clearOverlays 清除地圖標記非常簡單()。但是,此方法在 API v3 中不可用。這是有效刪除 v3 中所有標記的綜合指南。

關鍵是利用陣列來儲存標記引用,然後迭代該陣列以從地圖中刪除標記。以下步驟概述了這個過程:

I.宣告一個全域變數:

var markersArray = [];

II.定義一個函數:

function clearOverlays() {
  for (var i = 0; i < markersArray.length; i++ ) {
    markersArray[i].setMap(null);
  }
  markersArray.length = 0;
}

此函數迭代markersArray,將每個標記的setMap屬性設為null以將其從地圖中刪除,然後清空數組。

或者,您可以擴充 Map 原型以包含clearOverlays方法:

google.maps.Map.prototype.clearOverlays = function() {
  for (var i = 0; i < markersArray.length; i++ ) {
    markersArray[i].setMap(null);
  }
  markersArray.length = 0;
}

三.將標記推入數組中:

在刪除標記之前,請確保將它們新增至標記數組。使用以下程式碼:

markersArray.push(marker);
google.maps.event.addListener(marker,"click",function(){});

IV。呼叫Clear Overlays函數:

要執行標記刪除,請在需要的地方呼叫clearOverlays()函數或map.clearOverlays()。

透過執行以下步驟,您可以有效地從 Google Maps API v3 應用程式中刪除所有標記。

以上是如何刪除 Google Maps API v3 中的所有標記?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn