当KML描述打开时,是否可以更改KML中的特征颜色?

时间:2017-12-29 18:47:44

标签: kml kmz

我发现使用几个没有标签的连接LineStrings导航文件特别困难,当你通过左侧面板点击一个时,描述弹出窗口指向该行是非常无懈可击的,加上它不是突出它或任何东西。

我知道鼠标悬停突出显示样式,但有点击/选择样式吗?仅使用kml语法

1 个答案:

答案 0 :(得分:1)

您可以在说明中向KML添加onclick JavaScript操作,但您只能通过DOM在任何操作上更改HTML的内容。但是,只有在显示说明弹出窗口时,更改才会存在。再次选择地标时,描述将按原样重新呈现在HTML中。此外,您无法通过JavaScript直接更改KML样式(例如图标颜色等)。

这是一个简单的JavaScript onClick示例:

<?xml version="1.0" encoding="UTF-8"?>
<kml xmlns="http://www.opengis.net/kml/2.2">
  <Placemark>
    <name>Hello World</name>
    <snippet>Click the link in the description balloon to run some JavaScript!</snippet>
    <description><![CDATA[
    <html>
      <script>
        function buttonclick() {
          document.getElementById('status').innerHTML = 'You clicked the button!';
        }
      </script>
      <a href="#" onclick="buttonclick(); return false;">Click me!</a>
      <div id="status" style="font-style: italic; color: #0a0;"></div>
    </html>
    ]]></description>
    <Point>
      <coordinates>-122,37</coordinates>
    </Point>
  </Placemark>
</kml>

如果您想在查看或点击时更改要素的样式等,则可能需要使用CesiumJS进行调查。您基本上可以向功能添加任何操作。