編輯:該網站再次正常工作。我刪除了以下評論者所標記的代碼行(引用不存在的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月以來它一直沒有工作)?他們有什麼棘手的問題嗎?
謝謝,謝麗爾
Firebug顯示此錯誤:document.getElementById(「infoWindow」)爲null – lfergon
這可能與您的問題的根本原因無關,但您可能希望將版本說明符設置爲:v = 3.8。如果向下滾動到**選擇API版本**,則開發人員指南的[版本控制部分](https://developers.google.com/maps/documentation/javascript/basics#Versioning)會給出更多詳細信息,但3.9是_Nightly_版本和生產應用程序應該使用_Release_版本。希望這有幫助 - –
還有這樣的:'' - 那是什麼?這在我的機器上不起作用,因爲我沒有運行網絡服務器。如果這是Google Maps API的本地副本,那**會導致問題。 –