2008-10-22 82 views
1

我有一個谷歌地圖突然停止工作,原因不明(我沒有觸及數月的代碼,但是從我們的CMS包裝代碼可能已經沒有企業改變告訴我)。谷歌地圖API - GMarker.openInfoWindowHtml()停止工作

http://www.democratandchronicle.com/section/builder

(約地圖外討厭的HTML對不起,大部分是來自我們母公司...)

我已經收窄,到我的drawMarker這部分功能:

GEvent.addListener(marker, 'click', function() { 
    marker.openInfoWindowHtml(html, { maxWidth: 500 }); 
}); 

值得注意的是:

  • alert(html);顯示infowindow的正確HTML。
  • 在html變量中的HTML是確實有效。
  • 點擊事件正在觸發(其中由alert('test');確認)
  • 儘管代碼類似,我仍然在同一站點上託管的另一張地圖works fine
  • 沒有JavaScript錯誤在Firebug或IE瀏覽器,我可以看到。

我一直在抨擊我的頭這一段時間。我錯過了什麼?

+0

我儘管我改變了API的版本,我仍然無法使它工作的事實有同樣的問題。你最終如何解決這個問題? – Omayr 2011-07-26 13:00:47

回答

0

這解決了它自己。我懷疑這個API的更新打破了一兩個版本。

+0

你是如何更新api的? – Omayr 2011-07-26 13:01:26

+0

Google不會更新API。 – ceejayoz 2011-07-26 14:06:30

0

嘗試強制JavaScript來讓你的HTML的一個新的變量:

GEvent.addListener(marker, 'click', function() { 
marker.openInfoWindowHtml(html+'', { maxWidth: 500 }); 
}); 
1

我已經在時間和隨機問題與谷歌地圖API不止一次已經固定通過返回一個API版本。也就是說,如果你的谷歌地圖API的JavaScript字符串列入是這樣http://maps.google.com/maps?file=api&v=2.xd&key=XXXXX 變化2.X的東西了幾個版本背(背當它工作),像2.132什麼

1

嘗試:

GEvent.addListener(marker, 'click', function() { 
    this.openInfoWindowHtml(html, { maxWidth: 500 }); 
}); 

記住對象「標記」的範圍在你的功能之外

1

我最近有過這個問題,事件處理程序肯定跑了等。原來這裏有兩個谷歌地圖<腳本>標籤在頁面上的實例。刪除一個固定它。