【问题标题】:How to get the KML data from a GGeoXml object如何从 GGeoXml 对象中获取 KML 数据
【发布时间】:2010-01-06 13:59:01
【问题描述】:

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

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 文件中读取地标并将它们显示在列表中。我知道我需要的信息正在传输到浏览器,但我不知道如何访问它。

【问题讨论】:

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


    【解决方案1】:

    您可以从 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 不会被清除

    【讨论】:

      【解决方案2】:

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

      【讨论】:

      • 你知道混淆后的属性有多稳定吗?
      猜你喜欢
      • 1970-01-01
      • 2023-04-09
      • 2013-08-21
      • 2011-11-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多