2010-04-05 19 views
49

C'è un modo per ottenere tutti i marcatori su Google Maps?come ottenere tutti i marcatori su google-maps-v3

+0

Puoi per favore approfondire quello che stai cercando di fare. Inoltre se hai qualche codice per favore pubblicalo in modo che possiamo aiutarti a trovare una soluzione, piuttosto che limitarti a darti il ​​codice. – Voltin

+0

[un link molto utile su questo argomento] (https://developers.google.com/maps/documentation/javascript/examples/marker-remove) –

+0

@ zjm1126 ... forse puoi rispondere alla domanda di Voltin nel commento qualche volta all'interno del i prossimi tre anni? E facci sapere se c'è una migliore risposta tra quelle pubblicate. Se nessuno .. per favore si è dimostrato auto-risposta .. Presumo dopo aver guadagnato 14k rep è possibile rispondere alla propria domanda ormai ;-P – ZF007

risposta

0

Suppongo che tu abbia più marcatori che desideri visualizzare su una mappa di google.

La soluzione è composta da due parti, una per creare e compilare un array contenente tutti i dettagli dei marcatori, quindi un secondo per scorrere tutte le voci nell'array per creare ciascun indicatore.

Non so quale ambiente si sta utilizzando, è un po 'difficile fornire un aiuto specifico.

Il mio miglior consiglio è di dare un'occhiata a questo articolo & risposta accettata per comprendere i principi di creazione di una mappa con più marcatori: Display multiple markers on a map with their own info windows

1

L'unico modo trovato è quello di utilizzare la libreria geoXML3 che è adatto per utilizzo insieme al processore KML Versione 3 dell'API JavaScript di Google Maps.

63

Se si intende "come posso ottenere un riferimento a tutti i marcatori su una determinata mappa", allora penso che la risposta sia "Mi dispiace, devi farlo da solo". Non credo che ci sia alcuna "maps.getMarkers()" a portata di mano la funzione tipo: devi tenere i propri riferimenti, come vengono creati i punti:

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

Quindi è possibile un loop all'interno di allMarkers array e fare qualunque cosa tu abbia bisogno di fare

+7

voglio solo verificare se questo è ancora rilevante per oggi o c'è un supporto per recuperare i marcatori dal mappa ora? – ItayB

+3

ancora rilevante, sembra che non ci sia nessun altro modo a meno che non si memorizzino i marcatori in uno specifico array definito da soli –

-2

Se si utilizza JQuery Google map plug-in, allora sotto il codice funzionerà per voi -

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

+0

$ (...). Gmap non è una funzione – djdance

-2

Per un uso specifico cluster: getmarkers() Ottiene la serie di marcatori nel clusterer.

Per tutti i contrassegni nella mappa utilizzare: getTotalMarkers() Ottiene l'array di indicatori nel clusterer.

0

Google Maps API v3:

ho inizializzato Google Map e ha aggiunto marcatori ad esso. Più tardi, volevo recuperare tutti i marcatori e l'ho fatto semplicemente accedendo alla proprietà della mappa "marcatori".

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

var myMarkers = map.markers; 

È possibile effettuare il ciclo su di esso e accedere a tutti i metodi di Marker elencati Google Maps Reference.

Problemi correlati