谷歌地图:自动关闭打开信息窗口?
2022-08-30 05:33:35
在我的网站上,我正在使用Google Maps API v3在地图上放置房屋标记。
信息窗口将保持打开状态,除非您明确单击关闭图标。这意味着,如果您将鼠标悬停在地图标记上,您可以一次打开2个以上的InfoWindows。
问:如何使只有当前活动的信息窗口处于打开状态,而关闭所有其他信息窗口?这意味着,一次打开的信息窗口不超过1个?
在我的网站上,我正在使用Google Maps API v3在地图上放置房屋标记。
信息窗口将保持打开状态,除非您明确单击关闭图标。这意味着,如果您将鼠标悬停在地图标记上,您可以一次打开2个以上的InfoWindows。
问:如何使只有当前活动的信息窗口处于打开状态,而关闭所有其他信息窗口?这意味着,一次打开的信息窗口不超过1个?
使用许多信息窗口的替代解决方案:在变量中保存上一个打开的信息窗口,然后在新窗口打开时将其关闭
var prev_infowindow =false;
...
base.attachInfo = function(marker, i){
var infowindow = new google.maps.InfoWindow({
content: 'yourmarkerinfocontent'
});
google.maps.event.addListener(marker, 'click', function(){
if( prev_infowindow ) {
prev_infowindow.close();
}
prev_infowindow = infowindow;
infowindow.open(base.map, marker);
});
}