我正在使用Google Maps,並且正在嘗試創建啓用不同KML疊加層的側邊欄。我已經將KML圖層放入與按鈕的ID標記相同的變量中,以便按下它們以激活它們,希望將該ID作爲變量調用,然後將其用於setMap函數。
不知道這是否真的可能
在這個腳本這裏我試圖讓它按ID標籤'kml1',設置testvar ='kml1',然後能夠把testvar.setMap(the_Map )代替kml1.setMap(the_Map的),如圖的testvar == kml1通過編號將變量設置爲另一個變量
jQuery的
kml1 = new google.maps.KmlLayer("http://www.domain.com/map_overlay1.txt", {
preserveViewport: true,
});
kml2 = new google.maps.KmlLayer("http://www.odomain.com/map_overlay2.txt", {
preserveViewport: true,
});
$(document).ready(function() {
$('.kml_item').toggle(
function() {
for (i=0; i<50; i++) {
testvar = this.id
if (testvar == 'kml' + i) {
testvar.setMap(the_Map);
break;
}
}
},
function() {
for (i=0; i<50; i++) {
testvar = this.id
if (testvar == 'kml' + i) {
testvar.setMap(null);
break;
}
}
);
})
相關聯的HTML
<div id="kml1" class="kml_item">KML 1</div>
<div id="kml2" class="kml_item">KML 2</div>
慎用'i'它泄漏到在兩個迴路全球範圍內。會造成混亂和麻煩。不要忘記使用'var'。 – elclanrs