未捕获的TypeError的coffeescript:无法读取属性' offsetWidth#39;未定义的错误

时间:2013-11-27 11:17:22

标签: javascript ruby-on-rails coffeescript

我正在使用gem gmaps4rails并在检查开发人员工具时收到错误。

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()

我已经采取了一些提示,并提出其他问题已经给我但是无法修复代码,我认为这一行应该修复代码。

window.onload = ->

我已将此行放在我的代码中的其他地方,但我没有成功。我是ruby on rails和coffeescript的新手,我知道解决方案相对简单。我正好难以正确实现此修复程序。

非常感谢任何帮助。

2 个答案:

答案 0 :(得分:0)

其实我理解这个问题:你没有给你的地图一个居住的地方。

我敢打赌@map_canvas未定义。

(如果你已经安装了gem,为什么不使用gmaps4rails?)

答案 1 :(得分:0)

尝试:     window.onload = (-> map = g.init() )

如果仍然出现错误,请尝试查找未定义的对象。