Rumah >hujung hadapan web >tutorial js >Bagaimana untuk Mengosongkan Semua Penanda daripada Google Maps API v3?

Bagaimana untuk Mengosongkan Semua Penanda daripada Google Maps API v3?

Susan Sarandon
Susan Sarandonasal
2024-11-15 11:58:03342semak imbas

How to Clear All Markers from Google Maps API v3?

Mengalih keluar Semua Penanda daripada Google Maps API v3

Dalam Google Maps API v3, mengosongkan semua penanda adalah berbeza sedikit daripada pendekatan yang digunakan dalam v2 . Walaupun map.clearOverlays() tidak lagi tersedia, langkah berikut menyediakan cara yang cekap untuk mencapai kesan yang sama:

1. Isytiharkan Tatasusunan Penanda Global

var markersArray = [];

Susun atur ini akan menyimpan rujukan kepada semua penanda pada peta.

2. Tentukan Fungsi Tindanan Jelas

Terdapat dua pilihan untuk menentukan fungsi tindanan jelas:

Pilihan A:

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

Pilihan B (Melanjutkan API Peta Google):

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

3. Tambahkan Penanda pada Array

Sebelum memanggil fungsi clearOverlays(), tolak setiap penanda ke dalam markersArray:

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

4. Panggil Fungsi Clear Overlays

Guna clearOverlays(); atau map.clearOverlays(); berfungsi apabila diperlukan untuk mengalih keluar semua penanda daripada peta. Fungsi ini berulang melalui markersArray, menetapkan sifat peta setiap penanda kepada null dan mengosongkan tatasusunan.

Atas ialah kandungan terperinci Bagaimana untuk Mengosongkan Semua Penanda daripada Google Maps API v3?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn