2010-04-05 7 views
49

Existe-t-il un moyen d'obtenir tous les marqueurs sur Google Maps?comment obtenir tous les marqueurs sur google-maps-v3

+0

Pouvez-vous préciser ce que vous essayez de faire? Aussi, si vous avez du code, veuillez le poster afin que nous puissions vous aider à trouver une solution, plutôt que de simplement vous donner du code. – Voltin

+0

[un lien très utile sur ce sujet] (https://developers.google.com/maps/documentation/javascript/examples/marker-remove) –

+0

@ zjm1126 ... peut-être que vous pouvez répondre à la question de Voltin dans les commentaires au cours de la les trois prochaines années? Et laissez-nous savoir s'il y a une meilleure réponse parmi les postées. Si aucun .. s'il vous plaît prouvé une réponse personnelle .. Je suppose après avoir obtenu 14k rep, vous pouvez répondre à votre propre question maintenant ;-P – ZF007

Répondre

0

Je suppose que vous avez plusieurs marqueurs que vous souhaitez afficher sur une carte google.

La solution est composée de deux parties, une pour créer et remplir un tableau contenant tous les détails des marqueurs, puis une seconde pour parcourir toutes les entrées du tableau afin de créer chaque marqueur.

Vous ne savez pas quel environnement vous utilisez, il est un peu difficile de fournir une aide spécifique.

Mon meilleur conseil est de jeter un oeil à cet article & réponse acceptée à comprendre les principes de création d'une carte avec plusieurs marqueurs: Display multiple markers on a map with their own info windows

1

La seule façon trouvé est d'utiliser la bibliothèque geoXML3 qui convient à Utilisation avec le processeur KML Version 3 de l'API JavaScript Google Maps.

63

Si vous voulez dire "comment puis-je obtenir une référence à tous les marqueurs sur une carte donnée" - alors je pense que la réponse est "Désolé, vous devez le faire vous-même". Je ne pense pas qu'il y ait à portée de main « maps.getMarkers() » fonction de type: vous devez garder vos propres références que les points sont créés:

var allMarkers = []; 
.... 
// Create some markers 
for(var i = 0; i < 10; i++) { 
    var marker = new google.maps.Marker({...}); 
    allMarkers.push(marker); 
} 
... 

Ensuite, vous pouvez boucler sur le tableau allMarkers à faire et tout ce que vous devez faire.

+7

je veux juste vérifier si cela est toujours pertinent pour aujourd'hui ou là un support pour récupérer les marqueurs de la carte maintenant? – ItayB

+3

toujours d'actualité, il semble qu'il n'y ait pas d'autre solution sauf si vous stockez les marqueurs dans un tableau spécifique défini par vous-même –

-2

Si vous utilisez JQuery Google map plug-in, puis sous le code fonctionnera pour vous -

var markers = $('#map_canvas').gmap('get','markers');

+0

$ (...). Gmap n'est pas une fonction – djdance

-2

Pour une utilisation de cluster spécifique: getMarkers() recherche le tableau des marqueurs dans le Clusterer.

Pour tous les marqueurs de la carte, utilisez: getTotalMarkers() Récupère le tableau de marqueurs dans le classeur.

0

API Google Maps v3:

J'initialisé Google Map et les marqueurs ajoutés. Plus tard, j'ai voulu récupérer tous les marqueurs et je l'ai fait simplement en accédant à la propriété de la carte "marqueurs".

var map = new GMaps({ 
    div: '#map', 
    lat: 40.730610, 
    lng: -73.935242, 
}); 

var myMarkers = map.markers; 

Vous pouvez passer en boucle et accéder à toutes les méthodes de marqueurs énumérés à Google Maps Reference.

Questions connexes