【问题标题】:Load KML check box加载 KML 复选框
【发布时间】:2013-11-06 16:04:47
【问题描述】:

我正在使用此示例代码,但我对以下部分的作用以及它们的来源感到困惑。我不理解 onclick 的 (\'red\') 部分或 + file + 。我正在尝试将其更改为 createNetworkLink 并使用我自己的 tester.kml。当我更改 + file + 时,它会中断。

    var currentKmlObjects = {
      'red': null,
    };

addSampleUIHtml(
        '<h2>Toggle KML Files:</h2>' +
        '<input type="checkbox" id="kml-red-check" onclick="toggleKml(\'red\');"/><label for="kml-red-check">Red Placemarks</label><br/>'
      );

     function loadKml(file) {
      var kmlUrl = 'http://earth-api-samples.googlecode.com/svn/trunk/' +
        'examples/static/' + file + '.kml';

      // fetch the KML
      google.earth.fetchKml(ge, kmlUrl, function(kmlObject) {
        // NOTE: we still have access to the 'file' variable (via JS closures)

        if (kmlObject) {
          // show it on Earth
          currentKmlObjects[file] = kmlObject;
          ge.getFeatures().appendChild(kmlObject);
        } else {
          // bad KML
          currentKmlObjects[file] = null;

【问题讨论】:

    标签: javascript kml google-earth-plugin


    【解决方案1】:

    “红色”只是一个例子。如果您要加载的 kml 是“mydoc.kml”,则将红色替换为 mydoc。将 http://earth-api-samples.googlecode.com/svn/trunk/' + 'examples/static/ 替换为您的文件在网络上的位置。不要触摸+file+。你必须有这样的东西: 'http://myadress.com/file/' + 文件 + '.kml'。

    【讨论】:

      【解决方案2】:

      查看loadkml函数的定义。

      function loadKml(file) { ...
      

      file 这个词只是一个参数,你传递给函数的任何东西都将在函数范围内由file 表示。

      如果调用loadKml("FOO"),那么函数中的kmlUrl 将等于

      http://earth-api-samples.googlecode.com/svn/trunk/examples/static/FOO.kml

      现在,您没有显示您的 toggleKml 函数,但它看起来也像 loadkml 一样接受单个参数。它看起来像。

      function toggleKml(file) { ...
      

      因此,当您单击 toggleKml("red"); 时,将调用它,并将值 "red" 传递给它。因此,在方法的范围内,单词file 的值将是red,如果您调用toggleKml("orange"); - 单词file 的值将是orange - 等等。

      【讨论】:

        猜你喜欢
        • 2015-10-06
        • 1970-01-01
        • 2011-05-06
        • 2013-01-27
        • 2021-04-07
        • 2011-04-28
        • 1970-01-01
        • 2020-08-27
        • 2017-10-09
        相关资源
        最近更新 更多