地图信息窗口未在鼠标悬停事件上打开(coffeescript)
Maps infowindow is not opening on mouseover event (coffeescript)
我研究并尝试了一切以找到解决方案。我必须承认我不是 coffeescript 方面的专家。也许这是一个明显的错误,但我不知道,如果有人能提供帮助,我会很高兴。
我在 google 地图上创建了标记。使用 click applisteners 可以打开属于标记的特定 html。现在我还需要每个标记的信息窗口,它应该在鼠标悬停时打开并在离开时关闭。
我不知道为什么它不起作用。我尝试了其他解决方案,这些解决方案主要适用于 javascript 但不适用于 coffeescript。这是代码:
### define
lodash : _
backbone : Backbone
marionette : Marionette
app : app
parse : Parse
###
class MapView extends Marionette.View
DEFAULT_CENTER : [0, 0]
DEFAULT_ZOOM : 10
className : "map-view"
render : ->
mapOptions =
zoom: @DEFAULT_ZOOM
streetViewControl: false
panControl: false
center: new google.maps.LatLng(@DEFAULT_CENTER...)
mapTypeId: google.maps.MapTypeId.ROADMAP
@map = new google.maps.Map(@el, mapOptions)
@infowindow = new google.maps.InfoWindow()
#[........................]
makeJobMarker : (job) ->
marker = new google.maps.Marker({
map : @map
position : {
lat : job.get("location").latitude,
lng : job.get("location").longitude
}
icon : "/images/marker/#{job.get("jobCategory")}.png"
animation : google.maps.Animation.DROP
zIndex : google.maps.Marker.MAX_ZINDEX + 1
optimized : false
})
marker.addListener("mouseover", =>
infowindow.setContent("Hello")
infowindow.open(map,marker)
)
marker.addListener("click", =>
app.router.navigate("/job/#{job.id}", trigger : true)
app.vent.trigger("view:searchItem")
)
marker.jobId = job.id
return marker
#[.......................]
您缺少访问私有成员 @map
和 @infowindow
的 @
密钥(this
相当于 javascript):
marker.addListener("mouseover", =>
@infowindow.setContent("Hello")
@infowindow.open(@map,marker)
)
我研究并尝试了一切以找到解决方案。我必须承认我不是 coffeescript 方面的专家。也许这是一个明显的错误,但我不知道,如果有人能提供帮助,我会很高兴。
我在 google 地图上创建了标记。使用 click applisteners 可以打开属于标记的特定 html。现在我还需要每个标记的信息窗口,它应该在鼠标悬停时打开并在离开时关闭。 我不知道为什么它不起作用。我尝试了其他解决方案,这些解决方案主要适用于 javascript 但不适用于 coffeescript。这是代码:
### define
lodash : _
backbone : Backbone
marionette : Marionette
app : app
parse : Parse
###
class MapView extends Marionette.View
DEFAULT_CENTER : [0, 0]
DEFAULT_ZOOM : 10
className : "map-view"
render : ->
mapOptions =
zoom: @DEFAULT_ZOOM
streetViewControl: false
panControl: false
center: new google.maps.LatLng(@DEFAULT_CENTER...)
mapTypeId: google.maps.MapTypeId.ROADMAP
@map = new google.maps.Map(@el, mapOptions)
@infowindow = new google.maps.InfoWindow()
#[........................]
makeJobMarker : (job) ->
marker = new google.maps.Marker({
map : @map
position : {
lat : job.get("location").latitude,
lng : job.get("location").longitude
}
icon : "/images/marker/#{job.get("jobCategory")}.png"
animation : google.maps.Animation.DROP
zIndex : google.maps.Marker.MAX_ZINDEX + 1
optimized : false
})
marker.addListener("mouseover", =>
infowindow.setContent("Hello")
infowindow.open(map,marker)
)
marker.addListener("click", =>
app.router.navigate("/job/#{job.id}", trigger : true)
app.vent.trigger("view:searchItem")
)
marker.jobId = job.id
return marker
#[.......................]
您缺少访问私有成员 @map
和 @infowindow
的 @
密钥(this
相当于 javascript):
marker.addListener("mouseover", =>
@infowindow.setContent("Hello")
@infowindow.open(@map,marker)
)