在 Google Maps API v3 中仅打开一个 InfoWindow

2023-12-11

我只需在 Google 地图上打开一个 InfoWindow。在打开新的 InfoWindows 之前,我需要关闭所有其他 InfoWindows。

有人可以告诉我该怎么做吗?


您只需创建一个InfoWindow对象,保留对其的引用,并为所有标记重复使用 if 。引用自 Google Maps API 文档:

如果您希望一次只显示一个信息窗口(就像 Google 地图上的行为一样),则只需创建一个信息窗口,您可以根据地图事件(例如用户点击)将其重新分配给不同的位置或标记。

因此,您可能只想创建InfoWindow初始化地图后立即对象,然后处理click标记的事件处理程序如下。假设您有一个名为someMarker:

google.maps.event.addListener(someMarker, 'click', function() {
   infowindow.setContent('Hello World');
   infowindow.open(map, this);
});

然后InfoWindow当您单击新标记时应该自动关闭,而无需调用close() method.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 Google Maps API v3 中仅打开一个 InfoWindow 的相关文章

随机推荐