2010-09-15 14 views
5

Hay dos sitios web, uno en desarrollo en desarrollo. Estoy portando un sitio a Zend Framework (para fines de mantenimiento/integración).Carga de página - "flash" en blanco entre las páginas

El sitio original (en vivo) tiene cargas de página ininterrumpidas: se cargará, luego actualizará el contenido en la pantalla mientras se mantiene la imagen de fondo, la navegación, etc. en la página.

El sitio portado (desarrollo) "parpadea" completamente en blanco por un breve momento, luego todo el contenido aparece simultáneamente.

Por lo que entiendo, esto es no un FOUC (flash de contenido sin estilo). El contenido en ambos sitios siempre aparece completamente con todas las reglas de CSS. Los dos sitios se ven idénticos cuando se procesan, usan las mismas imágenes, css y HTML markup. La única diferencia es que uno (el desarrollo) está siendo atendido por Zend Framework y el otro (en vivo) por el procedimiento de PHP.

¿Cuáles son las principales causas de esto, y se trata de un problema conocido de error/configuración con ZF? He tenido este problema antes sin usar ZF y no lo resolví.

Gracias por su ayuda.

Respuesta

0

Muy bien, acepté una respuesta prematuramente. Lo que estaba causando este problema era de hecho SWFObject !! Me di cuenta de esto cuando desarrollé para un nuevo sitio, y mostraba el mismo comportamiento. Creo que esto solo ocurre en la versión 2+, pero para cualquier otra persona que tenga el problema de que el fondo parpadee entre cargas de página (en lugar de mostrar todo el HTML renderizado a la vez) y que se llame a swfobject en esas páginas, quítelo y pruébalo. Puede ser solo tu problema también.

Para aclarar, actualicé a una versión más reciente de SWFObject al portar el sitio.

0

Es bastante común que los marcos evalúen la lógica del controlador y visualicen el cuerpo de la página antes de generar cualquier cosa; esto puede ocasionar retrasos en los datos que se envían al cliente, donde su página anterior (supongo) vuelca el encabezado de la página de inmediato.

+0

¿Eso realmente causaría un destello de una página completamente vacía? En cuanto a un sitio web con cargas de página considerablemente más largas que las mías (utilizando abode.com como ejemplo), el doble de mis cargas en el sitio de Zend, no tienen ni la más mínima transición de parpadeo entre las páginas con el mismo diseño. EDITAR: Aún mejor http://stackoverflow.com/users cargando más de 5 veces, siempre y cuando mi página, completamente sin fisuras cada vez que haga clic en el enlace. –

1

Podría ser su servidor web. Intente comparar los encabezados HTTP de sus servidores con un sniffer web como http://web-sniffer.net/ y vea si hay alguna diferencia en los encabezados de almacenamiento en caché. Si lo hay, su navegador está volcando todo y comenzando de nuevo, lo que podría parecerse a un FOUC en algunas circunstancias.

+0

Se intentó cambiar todos los encabezados para que coincidan, por ejemplo, con la configuración de staples.com. Aún teniendo un flash blanco entre las páginas. Vale la pena mencionar que es XHTML válido, sin @imports para CSS –

5

Intente poner javascript en la parte inferior de la página, justo antes de la etiqueta de cierre del cuerpo. Esto debería acelerar el procesamiento de la página, ya que la carga de JavaScript bloquea otras descargas (css, imágenes, etc.), por lo tanto, deja la página en blanco hasta que se hayan cargado todas las secuencias de comandos.

Cuestiones relacionadas