Maison >interface Web >js tutoriel >Comment supprimer tous les marqueurs dans l'API Google Maps v3 ?

Comment supprimer tous les marqueurs dans l'API Google Maps v3 ?

Linda Hamilton
Linda Hamiltonoriginal
2024-11-24 17:48:22708parcourir

How to Remove All Markers in Google Maps API v3?

Suppression de marqueurs dans l'API Google Maps v3 : une approche mise à jour

Dans l'API Google Maps v2, la suppression des marqueurs de carte était simple à l'aide de map.clearOverlays (). Cependant, cette méthode n'est pas disponible dans l'API v3. Voici un guide complet pour supprimer efficacement tous les marqueurs dans la v3.

La clé est d'utiliser un tableau pour stocker les références des marqueurs, puis de parcourir le tableau pour supprimer les marqueurs de la carte. Les étapes suivantes décrivent ce processus :

I. Déclarer une variable globale :

var markersArray = [];

II. Définir une fonction :

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

Cette fonction parcourt le marqueurArray, définit la propriété setMap de chaque marqueur sur null pour le supprimer de la carte, puis vide le tableau.

Alternativement , vous pouvez étendre le prototype Map pour inclure une méthode clearOverlays :

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

III. Poussez les marqueurs dans le tableau :

Avant de supprimer les marqueurs, assurez-vous qu'ils sont ajoutés au marqueursArray. Utilisez le code suivant :

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

IV. Appelez la fonction Clear Overlays :

Pour exécuter la suppression du marqueur, appelez la fonction clearOverlays() ou map.clearOverlays() où vous le souhaitez.

En suivant ces étapes, vous pouvez efficacement supprimez tous les marqueurs de votre application Google Maps API v3.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn