所以我有一个文件夹,里面有 2 个地标。其中一个在加载时隐藏,而另一个是可见的。我想在可见的描述中有一个链接来隐藏/显示隐藏的。有没有办法做到这一点?
问问题
265 次
1 回答
0
如果您使用的是 Google Earth 插件,这是一种方法。
首先为每个地标分配一个“id” - 所以在 KML 文件中,您需要编辑显示的代码
<Placemark>
<name>Placemark 1</name>
到
<Placemark id="placemark1">
<name>Placemark 1</name>
与地标 #2 相同
然后你有一个像下面这样的javascript函数,通过气球描述添加一个按钮来执行(参见这个示例页面如何做到这一点)
function togglePlacemarks() {
var pm1 = ge.getElementById('placemark1');
var pm1 = ge.getElementById('placemark1');
if (pm1.getVisibility() == true) {
pm1.setVisibility(false);
pm2.setVisibility(true);
} else {
pm1.setVisibility(true);
pm2.setVisibility(false);
}
}
在从气球执行 JS 的示例代码中,您将更改以下行
balloon.setContentString(
'<a href="#" onclick="alert(\'Running some JavaScript!\');">Alert!</a>');
到
balloon.setContentString(
'<a href="#" onclick="togglePlacemarks();">Toggle Visibility</a>');
最后,如果您只希望有一个简单的(即只有 2 个地标),那么也许您应该使用示例代码来创建地标,而不是创建和加载自定义 KML 文件。在这种情况下,当您创建地标时(通过这行代码)
placemark = ge.createPlacemark('');
你会这样做
placemark1 = ge.createPlacemark('placemark1');
...etc
并且
placemark2 = ge.createPlacemark('placemark2');
... etc
placemark2.setVisibility(false);
于 2012-04-11T16:49:50.757 回答