2012-10-02 43 views
0

似乎很簡單,但我似乎錯過了一些東西。當頁面加載時,我不確定哪些圖層將被創建(腳本化)。我可以打開多個圖層。我有一個創建每個圖層時創建的單選按鈕組。我希望這些能夠讓用戶分別查看它們。比方說,我有三個圖層隱藏顯示融合圖層

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是我有問題嗎?我怎樣才能隱藏他們所有的,並做出一個點擊的節目。

功能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

+0

http://wrestore.iupui.edu/Jon/mapScriptTry.html每當我嘗試重繪這兩張地圖時,我基本上都會丟失我的第一張地圖。混亂! – jeynon

回答

0

我錯過了一個變量,使其與兩個映射工作。錯誤不在圖層的開啓和關閉中,而是重新指定圖層名稱!

1

這是我前段時間發佈的一個答案https://stackoverflow.com/a/11108342/1211981,它顯示了切換Fusion Table圖層的簡單方法。 I.E.看看它是否開啓,如果不開啓,關閉它。希望你可以爲你的目的修改它。它適用於任何FT層。