2

KML に次のような目印があります

<Placemark> 
 <id>test345</id>
<name>Images from KML file</name>
<ExtendedData>
<Data name="type">
    <value>images</value>
</Data>
</ExtendedData>
<Point>
  <coordinates>-122.448425,37.802907,0</coordinates>
</Point>

クリック イベントで、このプレースマーカーから ExtendedData 情報を抽出しようとしています。

google.earth.addEventListener(kmlObject, 'click', function(event) {
    event.preventDefault();
    var kmlPlacemark = event.getTarget();
});

別の解決策は、kmlPlacemarker から kmlObject を取得することです。何かアイデアはありますか?

4

3 に答える 3

1

目印を指定すると、Google Earth API はExtendedData要素にアクセスするための 2 つのメソッドを提供します。

  • getBalloonHtml()
  • getBalloonHtmlUnsafe()

API リファレンス:
https://developers.google.com/earth/documentation/reference/interface_kml_feature

Google Code Playground で実際の例を見つけることができます:
https://code.google.com/apis/ajax/playground/?exp=earth#extended_data_in_balloons

拡張データの生の KML を取得したい場合は、KML 表現を取得して XML ドキュメントとして解析できます。

var output = placemark.getKml();
于 2013-10-05T12:44:22.077 に答える