2010-01-27 11 views
5

Estoy usando Google Map APIv2. En mi página tengo una barra lateral que contiene una lista de marcadores con evento onclick ejecutar método showDetails, que se parece a:Cómo centrar el mapa en el marcador y abrir la ventana de información del marcador en un método

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

El problema es que no puedo tanto panTo y openInfoWindowHtml en un solo método, sartenes pero no abrirá la información sobre herramientas y cuando cambie el método a:

GMarker.prototype.showDetails=function() { this.openInfoWindowHtml(this.details); map.panTo(this.getLatLng()); }; Abre la información sobre herramientas pero no se centra en el mapa de coordenadas del anclaje del marcador. Incluso el uso de la función de espera no resuelve mi problema. ¿Qué estoy haciendo mal?

Respuesta

1

Primero debe hacer un addListener para esperar hasta que el mapa termine de moverse con el evento 'moveend'. Luego, en su controlador de eventos, llame a removeListener en el oyente que creó para que el controlador de eventos solo se ejecute una vez. Después de eso, en el controlador de eventos, abra su ventana de información.

0

el método openInfoWindowHtml debe dar lugar a un panto para poner la ventana de información en la vista

es decir

marcador está fuera de la ventana y se activará la ventana de información en ese marcador - el mapa debe olla a esa ubicación +/- para que la ventana de información esté centrada en la ventana gráfica

Cuestiones relacionadas