2012-04-23 143 views
5

我有一個表單,允許您通過谷歌地圖預覽座標。用戶可以動態地向表單添加多組座標。座標的數量是可變的。在一個頁面上顯示Google地圖的多個實例

我用這段代碼循環訪問變量,我覺得它需要加載多個Google Maps實例。第一張地圖加載得很好,但第二張地圖只在最左邊的角落加載一個圖塊。如果我更新表格上的座標,那麼所有地圖只顯示最左側的一個圖塊。

   while (tempClone != cloneCount) { 
var lat_lng = new google.maps.LatLng(lat, lng);    

       options = { 
        zoom: 14, 
        center: lat_lng, 
        panControl: false, 
        zoomControl: false, 
        mapTypeId: google.maps.MapTypeId.TERRAIN 
       }; 

       map[tempClone] = new google.maps.Map(document.getElementById("map"+tempClone), options); 

       var infowindow = new google.maps.InfoWindow({ 
        content: inputBL[tempClone][0][1] + 'Entrance' 
       }); 

       marker[tempClone] = new google.maps.Marker({ 
        position: lat_lng, 
        map: map[tempClone], 
        title: inputBL[tempClone][0][1] 
       }); 
} 

謝謝你的幫助! Aaron

+1

你可以發佈一個鏈接到你的實時代碼,或者把它放在JSFiddle上,以便我們可以在上下文中查看它嗎?很難僅調試部分代碼。 – 2012-04-23 16:56:53

+0

是的,我會試着弄一點小提琴。謝謝。 – Ratty 2012-04-23 19:17:07

+0

嘿馬諾,很抱歉等了很久。我只能將項目上傳到外部服務器。我希望這會有所幫助,因爲我無法在jsfiddle下模擬這個問題。這裏是鏈接:http://s401600969.onlinehome.us/testing/yii-front/index.php/reportForm/create 希望,這給你一個更好的主意,以瞭解正在發生的事情。問題在於洞穴入口。輸入座標(度或十進制)後,它顯示圖像就好了,如果再次編輯入口,它不會正確顯示。以下是座標示例:59.32522,18.07002 再次感謝您的幫助! – Ratty 2012-04-24 03:36:27

回答

4

它幾乎看起來像你無法讓地圖調整大小。從我記得,如果地圖容器大小發生變化,會發生這種情況。你可以嘗試在顯示地圖後觸發調整大小嗎?

google.maps.event.trigger(map, "resize"); 
+0

我<3你。我認爲這與刷新問題有關,因爲無論何時我上下移動螢火蟲,它都會糾正問題,但我不知道這是否是一個肯定的問題。它現在已經修復。謝謝你的幫助! =) – Ratty 2012-04-25 04:29:30

相關問題