如何在标记上居中地图并在一种方法中打开标记的InfoWindow

sMa*_*usz 5 javascript google-maps google-maps-markers

我正在使用Google Map APIv2.在我的网页上,我有一个侧边栏,其中包含执行showDetails方法的onclick事件的标记列表,如下所示:

GMarker.prototype.showDetails=function() { map.panTo(this.getLatLng()); this.openInfoWindowHtml(this.details); };

问题是我不能在一个方法中同时使用panTo和openInfoWindowHtml,它会平移但不会打开工具提示,当我将方法更改为:

GMarker.prototype.showDetails=function() { this.openInfoWindowHtml(this.details); map.panTo(this.getLatLng()); }; 它打开工具提示,但不会将地图居中到标记的锚点坐标.即使使用等待功能也无法解决我的问题.我究竟做错了什么?

小智 1

您需要首先执行 addListener 来等待地图通过“moveend”事件完成移动。然后在您的事件处理程序中对您创建的侦听器调用removeListener,以便事件处理程序仅运行一次。之后,在事件处理程序中打开信息窗口。