【发布时间】:2014-02-27 13:09:36
【问题描述】:
我了解 Geoxml3 具有将 kml extendeddata 加载到变量中的内置功能(来自其源代码 - 见下文),但我在解析后找不到访问这些变量的方法。有谁知道该怎么做?谢谢,干杯。
(kmz 分支的 geoxml3.js 第 544 行):
// add extended data to variables
var extDataNodes = node.getElementsByTagName('ExtendedData');
if (!!extDataNodes && extDataNodes.length > 0) {
var dataNodes = extDataNodes[0].getElementsByTagName('Data');
for (var d = 0; d < dataNodes.length; d++) {
var dn = dataNodes[d];
var name = dn.getAttribute('name');
if (!name) continue;
var dName = geoXML3.nodeValue(dn.getElementsByTagName('displayName')[0], name);
var val = geoXML3.nodeValue(dn.getElementsByTagName('value')[0]);
placemark.vars.val[name] = val;
placemark.vars.display[name] = dName;
}
}
【问题讨论】:
-
你想用扩展数据做什么?您可以提供示例 KML 吗?显示您要执行的操作的地图代码示例?
-
我正在尝试获取一些信息以显示在工具提示上。见这里:pixel.net.br/unicef/mapa_estado.php。当您将鼠标悬停时,您会看到工具提示(谢谢),当您单击时,您会看到显示了一些额外的信息(作为来自 kml 的扩展数据),但我无法在工具提示上显示。从上面的代码来看,这应该很容易,因为 Geoxml 已经解析了信息:/
-
@Rodolpho :我没有找到您在以下 geoxml3.js code.google.com/p/geoxml3/source/browse/trunk/geoxml3.js 中提到的代码我也想从扩展数据中获取值。非常感谢任何帮助。
-
@ArunRaj 在 kmz 分支:code.google.com/p/geoxml3/source/browse/branches/kmz/geoxml3.js
标签: google-maps-api-3 kml geoxml3