【问题标题】:Hide Show Fusion Map Layer隐藏显示融合地图图层
【发布时间】:2012-10-02 21:21:00
【问题描述】:

看起来很简单,但我似乎遗漏了一些东西。当页面加载时,我不确定将创建哪些图层(脚本化)。我可以有多层。我有一个在创建每个图层时创建的单选按钮组。我希望这些能够允许用户单独查看它们。假设我有三个地图层

layer1.setMap(map1);
layer2.setMap(map1);   
layer3.setMap(map1);  

我像这样构建我的动态单选按钮(见下文。layer1 的示例,但其余部分相同)

 $('#tools').append('Layer1<input name="Layer1" type="radio" value="layer1" onClick="toggleLayer(layer1)"><br />');
}

我的 toggleLayer 是我遇到问题的地方?我怎样才能将它们全部隐藏并一键显示。

函数切换层(this_layer){

if (typeof layer1 === 'undefined') {
// variable is undefined
     }else
  {layer1.setMap(null);

}

if (typeof layer2 === 'undefined') {
// variable is undefined
     }else
  {layer2.setMap(null);

}

if (typeof layer3 === 'undefined') {
// variable is undefined
     }else
  {layer3.setMap(null);
}


    //alert(this_layer);
    this_layer.setMap(map1);

} 

我正在尝试找出哪些图层在上面,如果存在,则隐藏它们。我不能只禁用整个地图而不是逐层遍历吗? 示例页面在这里。请注意,在我的示例页面上,我正在尝试使用两张地图。我目前的技术在我尝试只设置一张地图的图层时有效,但当我尝试同时使用两者时会中断。对于我需要的东西来说,脚本似乎太复杂了。

http://wrestore.iupui.edu/Jon/mapScriptTry.html

【问题讨论】:

标签: javascript google-maps-api-3 google-fusion-tables


【解决方案1】:

这是我不久前发布的一个答案https://stackoverflow.com/a/11108342/1211981,它显示了一种切换 Fusion Table 图层的简单方法。 IE。看看它是否打开,如果没有打开它,如果它关闭它。希望您可以根据自己的目的对其进行修改。它适用于任何 FT 层。

【讨论】:

    【解决方案2】:

    我缺少一个变量以使其与两个地图一起使用。错误不在图层的打开和关闭,而是重新分配图层名称!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-08-02
      • 2012-05-06
      • 1970-01-01
      • 1970-01-01
      • 2013-04-17
      • 1970-01-01
      • 1970-01-01
      • 2021-07-13
      相关资源
      最近更新 更多