2013-11-27 23 views
0

我使用gem gmaps4rails並在檢查開發人員工具時收到錯誤。coffescript for Uncaught TypeError:無法讀取未定義錯誤的屬性'offsetWidth'

Uncaught TypeError: Cannot read property 'offsetWidth' of undefined 

我已經閱讀了這裏的其他解決方案,並知道問題是如何在窗口之前加載腳本。

這裏是初始化代碼(stores.js.coffee)

gm_init = -> 
    gm_center = new google.maps.LatLng(53,6) 
    gm_map_type = google.maps.MapTypeId.ROADMAP 
    map_options = { center: gm_center, zoom: 8, mapTypeId: gm_map_type } 
    new google.maps.Map(@map_canvas, map_options) 

map = gm_init() 

我已經採取了一些提示和adviece的,其他的問題給了我,但一直無法修復代碼,我想這一行應該修復代碼。

window.onload = -> 

我已經放了這行,和其他人在我的代碼中的各個地方,但我沒有成功。我是Ruby on Rails和coffeescript的新手,我知道解決方案相對簡單。我只是難以正確實施此修復程序。

任何幫助,非常感謝。

+0

不知道CoffeScript。這行是否將'new google.maps.Map(@map_canvas,map_options)'轉換爲'return new_map_obj'? –

+0

此代碼是由寶石生成的,所以我不確定,對不起。 還有另外兩頁由寶石生成,但它們很長。 –

+2

這絕對不是gmaps4rails的代碼,這是粗糙的谷歌地圖 – apneadiving

回答

0

其實我明白這個問題:你沒有給你的地圖住一個地方。

我敢打賭@map_canvas是未定義的。

(你爲什麼不使用gmaps4rails如果你已經安裝了寶石?)

+0

不應該得到一個未初始化的常量,如果這是不確定的? 該地圖運行完美,但我只是想擺脫那些你可以看到,當你打開開發工具 –

+0

你已經擁有'不能讀取屬性undefined'的'offsetWidth' – apneadiving

0

嘗試: window.onload = (-> map = g.init())

如果仍然出現錯誤試圖找到什麼對象是不確定的。

相關問題