2012-05-22 31 views
2

編輯:該網站再次正常工作。我刪除了以下評論者所標記的代碼行(引用不存在的div),嘗試了版本語法,以及contentBox函數中參數的順序)。還刪除了語法並添加了一行代碼以從DOM調用該函數。感謝所有評論。上面的一些組合工作。謝啦,謝麗爾)谷歌地圖版本更改凍結網站 - v3

注意:我昨天在主論壇問過這個問題 - 沒有意識到谷歌地圖用戶組在堆棧溢出中有自己的標籤。這裏是問:

我有一個應用程序,使用谷歌地圖API v.3,並訪問內容從數據庫顯示在谷歌的infowindows和側邊欄。在這裏查看主文件的代碼:www.corkmemorymap.org。

我的問題是,定期在用戶點擊標記時調出邊欄中內容的功能停止工作。您仍然可以通過頁面頂部的主題搜索訪問邊欄內容(這是用jQuery完成的,而不是綁定到谷歌或標記),但我無法通過標記獲取邊欄內容。

上次發生這種情況是版本問題。我向調用API的腳本代碼添加了一個版本,一切都很順利。

<script type="text/javascript" src="http://maps.googleapis.com/maps/api/js?v=3.9&sensor=false"></script> 

這次我以爲是同樣的事情,因爲我看到谷歌已經棄用了那個版本。所以我更新到新版本和... nada。所以現在我很難過。我試着用不同的版本,或者沒有版本,並且再次簡單地工作。那麼不是。有沒有其他人有這方面的經驗?版本不穩定?有什麼建議麼?

如果有幫助,這是調用側邊欄內容變化的函數:

function contentBox(marker, map, sidebar, winHtml, infoWindow) { 
    google.maps.event.addListener(marker, 'click', function() { 
     document.getElementById('sidebar').innerHTML=winHtml; 
     infoWindow.close(map, marker); 
    }); 
} 

哦,一兩件事 - 我沒有使用API​​密鑰,因爲這是一個非營利性的網站。我是否需要一個API密鑰(自2011年12月以來它一直沒有工作)?他們有什麼棘手的問題嗎?

謝謝,謝麗爾

+2

Firebug顯示此錯誤:document.getElementById(「infoWindow」)爲null – lfergon

+0

這可能與您的問題的根本原因無關,但您可能希望將版本說明符設置爲:v = 3.8。如果向下滾動到**選擇API版本**,則開發人員指南的[版本控制部分](https://developers.google.com/maps/documentation/javascript/basics#Versioning)會給出更多詳細信息,但3.9是_Nightly_版本和生產應用程序應該使用_Release_版本。希望這有幫助 - –

+0

還有這樣的:'' - 那是什麼?這在我的機器上不起作用,因爲我沒有運行網絡服務器。如果這是Google Maps API的本地副本,那**會導致問題。 –

回答

0

此問題已在上述評論中回答。有兩個問題:我需要更新我在標題中引用的Google Maps API的版本,並且我有一行代碼指向不存在的div。我更新了前者並刪除了後者。感謝那些迴應。