Tengo un problema al insertar un Google Map a través de la API v3 en un cuadro modal.Aparecen cuadros grises en partes de Google Map incrustado en el cuadro modal
Aparecen cuadros grises en el lienzo del mapa cuando se muestra el modal. Al cambiar el tamaño de la ventana del navegador, abrir Web Inspector, etc., se pueden ver todos los mosaicos del mapa, es decir, se "fuerza a volver a renderizar" el mapa.
El elemento principal del elemento del mapa (section#map-modal
, ver el código a continuación) tiene display: none
establecido en su CSS en la carga de la página. El código modal JS establece automáticamente display: block
cuando se hace clic en el botón mostrar. Si elimino temporalmente display: none
del elemento modal, el mapa se representa correctamente al actualizar la página. ¿No le gusta a Google Map tener un elemento padre oculto?
Estoy usando el complemento jQuery modal de Bootstrap de Twitter, y estoy controlando el modal en sí con CSS. Está fijo, tiene un ancho de píxel, etc. Nada inusual.
He buscado en Google, por supuesto, en torno a las soluciones, y muchos puntos con el método API de Google de desencadenar el evento resize
:
google.maps.event.trigger(map, 'resize');
que he hecho hecho, pero fue en vano.
código relevante: https://gist.github.com/1591488
Como se puede ver, I'me activar los sucesos en la línea 39.
(pulse el botón Ver mapa más grande en la parte inferior de la barra lateral).
Archivos:
fagerhult.js
fagerhult.map.js
bootstrap-modal.js
master.css
Me profundamente agradecería cualquier ayuda o un par de ojos extra en esto, ya que estoy pronto volviéndose loco por eso.
Otros artículos StackOverflow sobre el tema que he intentado: - http://stackoverflow.com/questions/3838580/google-map-comes-partially-grey-area-comes-instead-of- images-from-google-server - http://stackoverflow.com/questions/1746608/google-maps-not-rendering-completely-on-page - http://stackoverflow.com/questions/2836095/google- maps-within-a-dynamic-loaded-jquery-accordion - http://stackoverflow.com/questions/8019222/google-map-inside-siding-panel-grey-squares Google Maps v3 API: http: //code.google.com/apis/maps/documentation/javascript/reference.html#Map –
Prueba con esto a cabo si se enfrentan al mismo problema: http://stackoverflow.com/a/28307131/3647974 –