0

所以我有一个文件夹,里面有 2 个地标。其中一个在加载时隐藏,而另一个是可见的。我想在可见的描述中有一个链接来隐藏/显示隐藏的。有没有办法做到这一点?

4

1 回答 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 回答