我正在实现谷歌地图,它将一组多边形作为州边界,并将集合标记作为多边形上的城市,当我悬停在多边形/州上时,然后显示一些信息。
我的问题是,当将鼠标悬停在多边形/州上时,我如何关闭标记/城市的信息窗口,反之亦然。
Fiddle is here:
地图示例
在标记和/或多边形上有一个事件侦听器:
marker.addListener('mouseover', function() {
infowindow.close();
});
因此,当他们将鼠标悬停在标记上时,即"鼠标悬停",您将关闭信息窗口。 到目前为止,没有看到您的任何代码,我假设您有一个可以访问的变量marker
和infowindow
。
或者,您可能希望完全删除信息窗口:
infowindow.setMap(null);
更新:好的,现在您至少已经链接到了一些代码,您可能想做的是在将鼠标悬停在多边形上时关闭信息窗口,将鼠标悬停在标记上时关闭状态信息窗口。 像这样:
google.maps.event.addListener(marker,'mouseover', (function(marker){
return function() {
infowindow.setContent(find_city);
infowindow.open(map,marker);
stateinfoWindow.close();
};
})(marker,infowindow));
和:
google.maps.event.addListener(polygon, 'mouseover', function (e) {
stateinfoWindow.setContent("State");
stateinfoWindow.open(map);
infowindow.close();
});
假设您polygon
并声明为所需的变量infoWindow
。
google.maps.event.addListener(polygon,"mouseover",function(){
infowindow.close();
});