原文地址 点这
# google地图点击弹出InfoWindow,同时关闭上一个InfoWindow
因为项目需求原因,需要实现以下功能:
- 点击地图上的每个坐标标记后显示其坐标信息
- 当有多个点时,地图上只能存在一个infowindow
解决思路如下:
首先给出google地图infowindow的一个示例用法(https://developers.google.com/maps/documentation/javascript/examples/event-closure?hl=zh-cn)
示例中为每个坐标点添加了点击事件,弹出一个infowindow,在此窗口上显示信息,具体不在赘述,示例中得源码很简单。
可是我们会发现,当我们点击一个点弹出infowindow,然后不去手动关闭,在点击下一个点时,先前的那个ingowindow仍然留在地图上,当点击的很多时,就会是这种效果了:
相信这会让使用这套系统的人疯掉的,那么如何解决这个问题呢?很简单,每当我们打开一个新的infowindow时就关闭上一个infowindow,查询google地图API,发现infowindow给开发人员提供了close()这个方法,这下一切事情就好办了。解决思路:
首先需要一个存取info