我在rails v.3.1.11 app上使用gmaps4rails gem。 根据我见过的各种例子,我试图用这个来实现这个主题的目标:
在我的视图的页脚上(使用haml):
= yield :scripts
:javascript
Gmaps.map.callback = function(){
console.log('callback');
$(document).trigger('map:ready');
}
然后在咖啡脚本文件上定义触发器:
$(document).on 'map:ready', -> openInfoWindow()
openInfoWindow = ->
for m in Gmaps.map.markers
marker = m.serviceObject
google.maps.event.addListener marker, "click" ->
infowindow.open(map,marker)
infowindow.open(map,marker)
但是我有一个错误:未捕获的ReferenceError:未定义对象 我做了其他尝试,但我无法弄清楚如何设置事物
答案 0 :(得分:1)
您无法直接使用infowindow
和map
。
您必须在代码中使用标记对象的属性(m
)。
尝试:
$(document).on 'map:ready', -> openInfoWindow()
openInfoWindow = ->
for m in Gmaps.map.markers
marker = m.serviceObject
google.maps.event.addListener marker, "click" ->
m.infowindow.open(marker.map, marker)
m.infowindow.open(marker.map, marker)
HTH