2012-01-11 5 views
7

Estoy tratando de entender cómo Facebook implementa la barra lateral de chat. Parece permanecer allí incluso cuando cambio de página. Por ejemplo, si selecciono algún texto dentro de la barra lateral, y luego hago clic para ir a otra página de Facebook, el texto permanece seleccionado. Es como si fuera un marco separado, pero cuando miro el código, no lo es.¿Cómo implementó Facebook la barra lateral de chat?

Respuesta

3

Existe un elemento contenedor DOM denominado "fb_content", su contenido se reemplaza mediante AJAX directa o más técnicamente XMLHttpRequest. (Aunque cuando, por ejemplo, ingresa una aplicación, la página completa se actualiza). Para actualizar la barra de direcciones, usa el JavaScript History API.

4

Todas las solicitudes se realizan a través de llamadas AJAX. Solo el contenedor de "contenido" se reemplaza cuando es necesario.

En realidad, no "va" a otra página. Solo el div "contenido" se actualiza.

0

Además de lo que dijeron Zeno y Lericson (fb_content se actualiza a través de ajax), la barra de direcciones también se actualiza mientras se mantiene el historial (si presiona atrás/adelante).

Cuestiones relacionadas