ChatGPT解决这个技术问题 Extra ChatGPT

如何在 Google Maps V3 上触发标记的 onclick 事件?

如何从地图外部触发 Google 地图上标记的 onclick 事件?

我使用 API 的第 3 版。我看过很多版本 2 的教程,但找不到版本 3 的教程。

我有一个全局数组(命名标记),其中包含地图的所有标记(google.maps.Marker)。现在我想做类似的事情:

markers[i].click(); //I know it's not working, but you get the idea...

//Next line seems to be the way in v2, but what's the equivalent in v3?
GEvent.trigger(markers[i], 'click');

感谢您的帮助,如果您需要更多信息,请告诉我!


A
AlexV

我找到了解决方案!感谢萤火虫;)

//"markers" is an array that I declared which contains all the marker of the map
//"i" is the index of the marker in the array that I want to trigger the OnClick event

//V2 version is:
GEvent.trigger(markers[i], 'click');

//V3 version is:
google.maps.event.trigger(markers[i], 'click');

点击正在触发,但在我的情况下,信息窗口没有调整到地图,它略微减少。
@Saboor Awan 尝试询问有关此问题的具体问题,因为评论不是解决此问题的最佳方法。
为 v3 执行此操作给了我 TypeError: a is undefined in main.js (line 16, col 894) 那会是什么原因?
@invot 没有看到代码真的帮不上忙,但我在快速搜索时发现有人遇到同样的问题......尝试使用像素(px)而不是百分比(%)在 CSS 中设置“popupMapIn”的宽度和高度.
此解决方案不适用于集群标记(组标记之一)情况。如果你有,请分享建议。谢谢。
E
Ergec

对于未来的 Google 员工,如果您在触发单击多边形后收到类似以下的错误

"Uncaught TypeError: Cannot read property 'vertex' of undefined"

然后尝试下面的代码

google.maps.event.trigger(polygon, "click", {});

你拯救了我的夜晚。我为此挣扎了3个小时!谢谢!!