2014-02-18 81 views
1

我正在使用我修改,使用ammaps庫的小腳本。我使用世界地圖,如果我點擊某些國家,它會加載包括各州在內的國家地圖。即使在加載地圖後onclick - ammap

現在,我打開一個國家並點擊一個國家我想使用onclick事件,然後打開適當的網站的狀態後找到解決方案正在努力。我的jsfiddle在這裏http://jsfiddle.net/xzAx7/,我將不勝感激任何幫助。

這是我點擊國家後如何加載新地圖的代碼。這些地圖包括州。

map.addListener("clickMapObject", function (event) { 
     if (event.mapObject.id == "FR") { 
      loadNewMap("http://www.ammap.com/lib/maps/js/franceLow.js", "franceLow"); 
     } 
     else if (event.mapObject.id == "RU") { 
      loadNewMap("http://www.ammap.com/lib/maps/js/russiaLow.js", "russiaLow"); 
     } 
     else if (event.mapObject.id == "US") { 
      loadNewMap("http://www.ammap.com/lib/maps/js/usaLow.js", "usaLow"); 
     } 
    }); 

回答

1

我會把處理程序移動到一個單獨的函數,並會添加另一個if,這也會檢查id和生成url。

如果您不能自動生成URL,那麼您不應該使用getAreasFromMap選項,而是在新數據提供者中添加每個區域併爲區域設置url屬性。

1
if (event.mapObject.id == "FR") { 
    map.clear(); 
    map.dataProvider.mapVar = AmCharts.maps.franceLow; 
    map.write("mapdiv"); 
}; 
+0

請詳細說明爲什麼這會回答問題並解決OP問題。 – Nobita

相關問題