Javascript 将事件侦听器应用于Google Maps中的多个Kmlayer
我想将事件侦听器应用到多个层,即:编号为layer1到Layer8的层,尝试执行数组但不起作用。Kmlayers只有在你打开它们的时候才会开火,所以可能数组不是正确的方式,但不确定其他方式Javascript 将事件侦听器应用于Google Maps中的多个Kmlayer,javascript,google-maps,google-maps-api-3,dom-events,Javascript,Google Maps,Google Maps Api 3,Dom Events,我想将事件侦听器应用到多个层,即:编号为layer1到Layer8的层,尝试执行数组但不起作用。Kmlayers只有在你打开它们的时候才会开火,所以可能数组不是正确的方式,但不确定其他方式 if (document.mapControlBox.checkbox1.checked) { /* Load the layer */ var layer1 = new google.maps.KmlLayer('theURL', {suppressInfoWindows: true})
if (document.mapControlBox.checkbox1.checked) {
/* Load the layer */
var layer1 = new google.maps.KmlLayer('theURL', {suppressInfoWindows: true});
layer1.setMap(map);
layer1.set('preserveViewport', true);
};
/* repeat, repeat... */
/* try to select all layers */
for (var i = 1; i < layer.length; i++) {
var layers = layer[i];
google.maps.event.addListener(layers, 'click', function(kmlEvent) {
var text = kmlEvent.featureData.description;
showContentWindow(text);
});
}
/*default function from Gmap example */
function showContentWindow(text) {
var sidediv = document.getElementById('content_window');
sidediv.innerHTML = text;
};
关联的HTML:
<form name="mapControlBox">
<ul>
<li>
<input type="checkbox" name="checkbox1" value="checkbox1" onclick="displayMaps();" />
<label class="mapoption">Checkbox1<label>
</li>
/*etc etc*/
</ul>
没关系,我决定用这个脚本:
但尽管如此,我的版本的问题是我必须全局调用变量。不要紧,我决定使用以下脚本: 但尽管如此,我的版本的问题是,我必须全局调用变量