我正在使用 Google Fusion Tables 创建地图。它有几个图层,根据选中的复选框显示或隐藏。
我创建了一些代码来打开/关闭图层,使用变量 (layer10on) 来跟踪每个图层 (layer10) 当前是否可见:
function toggleLayer10() {
if(layer10on) { layerl0.setOptions({map: null}); }
if(!layer10on) { layerl0.setOptions({map: map}); }
layer10on=!layer10on;
}
...
<input type="checkbox" checked onchange="toggleLayer10();" />
这可以正常工作,但我不想为每个复选框/图层复制此代码,因此我尝试传递选中哪个复选框以及与之相关的图层的参数,但它不起作用:
function toggleLayer(layerToChange,checkboxID) {
if(!document.getElementById(checkboxID).checked) {
layerToChange.setOptions({map: null});
}
if(document.getElementById(checkboxID).checked) {
layerToChange.setOptions({map: map});
}
}
...
<input value="layer10" id="check10" type="checkbox" checked onchange="toggleLayer(this.value,this.id);" />
自从我进行任何编码以来已经有好几年了,所以任何帮助让我知道我哪里出错了,我们将不胜感激。
谢谢,
尼古拉