Un par de cosas para tener en cuenta aquí, simplemente usar .focus()
o desencadenar una acción de clic en el elemento div #map
no funcionará porque esas acciones tienen lugar antes de que el mapa realmente se represente en el DOM. Por lo tanto, lo primero que debe reconocer es el uso del evento tilesloaded
que proporciona la biblioteca de google maps.
google.maps.event.addListener(map, 'tilesloaded', function() {
//do actions
});
La segunda cosa que vine a descubrir es que no sólo puede añadir $('#map').click()
en el interior del detector de eventos. Esto se debe a que aunque el #map
es el contenedor div, el script de google maps en realidad representa un montón de otros divs encima (que tienen índices z más altos y también son los que realmente contienen los mosaicos del mapa). Con un poco de piratería alrededor, y jQuery se puede reducir a la div que contiene los azulejos y desencadenar el evento click en ese div ... código resultante fue:
google.maps.event.addListener(map, 'tilesloaded', function() {
$("#map").children().children().first().children().trigger('click');
});
que utilizan herramientas de Chrome Dev para acotar baje al div que contiene las fichas y use el método de children()
de jquery para atravesar ese div del #map
. Si insertas ese código en tu función init, deberías estar listo para continuar. Aquí hay un JSfiddle con un ejemplo de trabajo de la solución.
¿quiere decir controlar la panorámica del mapa con las teclas de flecha del teclado? –
La respuesta a esta pregunta podría ayudar: http://stackoverflow.com/questions/9195814/google-maps-v3-keyboard-accessibility/9218055#9218055 – Marcelo