2011-08-31 23 views
24

¿Cómo puedo saber si el mapa de Google está en modo Street View o en modo Roadmap? ¿Hay algún evento que sea despedido? Traté de mirar a través de los documentos, y no parece haber nada. ¿Me estoy perdiendo de algo?Detectando el modo Street View de Google Maps

Cuando el usuario cambia al modo Street View, quiero que la UI cambie, pero no sé a qué evento vincularme.

Respuesta

51

Detecta el evento visible_changed en el StreetViewPanorama asociado con tu objeto Map. Puede obtener el panorama del mapa llamando a su método getStreetView() y vincular el controlador al evento de ese objeto. Deberá probar la visibilidad de StreetViewPanorama llamando a su método getVisible().

Por ejemplo:

var map = new google.maps.Map(document.getElementById("theMap"), {streetViewControl: true}); 

var thePanorama = map.getStreetView(); 

google.maps.event.addListener(thePanorama, 'visible_changed', function() { 

    if (thePanorama.getVisible()) { 

     // Display your street view visible UI 

    } else { 

     // Display your original UI 

    } 

}); 

Consulte la sección de eventos de la StreetViewPanorama Object Documentation para más eventos se pueden detectar en este objeto.

+0

Sí, me las arreglé para resolverlo anoche, gracias: D – userinev

+0

@userinev Doh, publiqué esto dentro de los 15 minutos de su pregunta, jeje. Lástima que no hayas vuelto antes. : [ – lsuarez

+0

Por alguna razón el evento se dispara más de una vez en cada cambio de entrada/salida para mí. –