我正在使用 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());
};
它会打开工具提示,但不会将 map 居中到标记的 anchor 坐标。
即使使用等待功能也不能解决我的问题。
我做错了什么?
最佳答案
您需要先执行 addListener 以等待 map 完成移动并触发“moveend”事件。然后在您的事件处理程序中对您创建的监听器调用 removeListener,以便事件处理程序只运行一次。之后在事件处理程序中打开您的信息窗口。
关于javascript - 如何在标记上居中 map 并以一种方法打开标记的信息窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2146751/