我使用以下代码将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文件中读取地标并将其显示在列表中。我知道我需要的信息正在传输到浏览器,但我不知道如何访问它。
答案 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。自己查看一下,看看你需要的属性(名称,描述等)。