Question

Je charger un fichier KML dans un objet google map en utilisant le code suivant:

map = new GMap2(document.getElementById("map_canvas")); 
geoXml = new GGeoXml(kml);
GEvent.addListener(geoXml, "load", function() {
    geoXml.gotoDefaultViewport(map);
    // I would like to read the KML contents here
});
map.addOverlay(geoXml);
// ...

Je voudrais lire les placemarks du fichier KML et les afficher dans une liste. Je sais que l'information nécessaire est transféré au navigateur, mais je ne sais pas comment y accéder.

Était-ce utile?

La solution

Vous ne pouvez pas y accéder via l'API, mais les données sont disponibles dans les propriétés brouillées à l'intérieur objet GGeoXml. En regardant dans Firebug, je trouve que les informations ici: GeoXml. de q.ia de $. Regardez vous-même pour voir les propriétés dont vous avez besoin (nom, description, etc.).

Autres conseils

vous pouvez obtenir le KML du GGeoXml

ont une variable dans la fenêtre

geoXml = new GGeoXml("http://mapgadgets.googlepages.com/cta.kml",
                         function(){
                              geoXml.getKml(
                                function(a){
                                  myKml = a;
                                  alert(myKml);
                                });} );

essayer ici: http://code.google.com/apis/ajax/playground /? exp = cartes # map_geoxml_kml

il suffit de changer à une ligne, alternativement, si vous ne voulez pas utiliser la fonction de rappel de GGeoXml vous pouvez appeler getKml () dans une autre fonction après que les choses ont fini de charger, à condition que votre GeoXml ne soit pas effacé

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top