Google maps 鼠标上方的google maps v3标记信息窗口
我已经搜索了stackoverflow和其他论坛,包括google maps v3 api文档,寻找答案,但我找不到如何在我正在处理的文件中将触发标记信息窗口的事件从单击更改为鼠标悬停 我正在使用谷歌图书馆的一个演示,其中包括一个融合表层 放大簇并查看位置的红色小圆圈标记。 您必须单击以显示信息窗口。我希望滚动显示信息窗口 我的演示在这里: functions.js文件完成了此处的大部分工作: 下面是一个例子:Google maps 鼠标上方的google maps v3标记信息窗口,google-maps,google-maps-api-3,google-maps-markers,mouseover,google-fusion-tables,Google Maps,Google Maps Api 3,Google Maps Markers,Mouseover,Google Fusion Tables,我已经搜索了stackoverflow和其他论坛,包括google maps v3 api文档,寻找答案,但我找不到如何在我正在处理的文件中将触发标记信息窗口的事件从单击更改为鼠标悬停 我正在使用谷歌图书馆的一个演示,其中包括一个融合表层 放大簇并查看位置的红色小圆圈标记。 您必须单击以显示信息窗口。我希望滚动显示信息窗口 我的演示在这里: functions.js文件完成了此处的大部分工作: 下面是一个例子: marker.addListener('mouseover',function(
marker.addListener('mouseover',function(){
打开(地图,这个);
});
//假设您还希望在用户鼠标移出时隐藏信息窗口
marker.addListener('mouseout',function(){
infowindow.close();
});
多亏了邓肯的回答,我最终得出以下结论:
marker.addListener('mouseover', () => infoWindow.open(map, marker))
marker.addListener('mouseout', () => infoWindow.close())
您正在查找的事件是鼠标悬停,这对您不起作用吗?我甚至看不到单击红色标记时出现的信息窗口,如果我想从信息窗口复制一些文本,该怎么办?我想信息窗口保持打开,只要我有我的鼠标在标记或信息窗口本身。。。因此,标记器上的mouseout侦听器不会执行此操作:(@Kedor将mouseout事件侦听器更改为位于信息窗口上,而不是标记上。这对我来说是可行的,但其背后的工作是什么?即使在for循环中,“this”如何获取标记的引用?@lostchild问得好。我的理解是,
这
是对事件侦听器中的任何对象的引用附加到,即在本例中它是标记
的简写。在本例中,使用此
而不是标记
没有真正的优势。但是,如果您有一个可以附加到各种对象的事件侦听器函数(例如,如果我们在多段线上使用相同的函数进行鼠标悬停),引用标记是没有意义的,不太具体的这个会更有意义。
marker.addListener('mouseover', () => infoWindow.open(map, marker))
marker.addListener('mouseout', () => infoWindow.close())