我知道我们中的许多人都在编写代码以InfoWindow
在单击标记时打开一个。但是在单击InfoWindow
右上角的X之前, 将保持原位,这意味着将关联的Marker
可见性设置为false
将创建本质上是孤立的InfoWindow
. 地图上可能同时InfoWindow
显示多个实例。我想用户只需单击InfoWindow
关闭就足够简单了,但感觉就像隐藏Marker
应该隐藏关联的InfoWindow
.
我已经开始编写如下代码来处理这种情况:
google.maps.event.addListener( marker, "click", function() {
var bubble = new google.maps.InfoWindow({
content: buildBubbleContent( param1, param2 )
});
bubble.open( map, marker );
//pretty standard stuff to here, but the next line is new (for me):
google.maps.event.addListenerOnce( marker, "visible_changed", function() {
bubble.close();
});
});
这是其他人都在做的事情吗?感觉就像一种应该称为ListenBack的设计模式。我从未见过 Google Maps 文档中解决的问题。我不禁认为,必须有一个更简单的机制InfoWindow
来自动处理这个问题。有没有我刚刚错过的标准方法?