如何从GGeoXml对象获取KML数据

时间:2010-01-06 13:59:01

标签: javascript google-maps kml google-maps-api-2

我使用以下代码将KML文件加载到Google地图对象中:

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);
// ...

我想从KML文件中读取地标并将其显示在列表中。我知道我需要的信息正在传输到浏览器,但我不知道如何访问它。

2 个答案:

答案 0 :(得分:3)

你可以从GGeoXML获得KML

在窗口中有一个变量

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

在这里试试: http://code.google.com/apis/ajax/playground/?exp=maps#map_geoxml_kml

只需更改为一行,或者,如果您不想使用GGeoXML的回调,则可以在完成加载后在其他函数中调用getKml(),前提是您的geoXml不会被清除

答案 1 :(得分:1)

您无法通过API访问它,但数据在GGeoXML对象内的混淆属性中可用。在Firebug中查看它,我在这里找到了相关信息: geoxml。$ q.ia。自己查看一下,看看你需要的属性(名称,描述等)。