Contenido fijo entre páginas

Fr4nk0

Buenas gente.

Hoy estando en el facebook, me dio por darle al chat y dejar abierta una ventana.
Después seguí navegando (url's diferentes) y vi que esa ventana nunca se mueve y su contenido sigue fijo.
Es más, con firebug le cambie el contenido al div que contiene la palabra Chat por Chatatata, seguí moviendome entre páginas y no se cambiaba.

Vale, hasta aquí todo normal, pero me fijé y en la transición entre una página y otra, ese contenido no desaparecía sino que el contenido de la página cambiaba (url incluída) y el Chatatata seguía igual (y las ventanas y contenido también).

Pensé que podría ser la página un iframe y el chat la página real (o algo por el estilo), pero miré el código y nada, es una página "normal" hecha con divs. Lo único que el div que contiene al chat tiene el id "pagelet_presence". Esto me huele a que algo harán con Javascript, pero miré y nada.

En definitiva, que me ha gustado eso de que cambies de página y que la parte del chat no desaparezca y vuelva a aparecer con la página, sino que siga fija e invariante.

Alguno sabe como puede estar hecho eso? Es por curiosidad, porque me fijé y no sé cómo se haría eso y ahora tengo que saberlo "por cojones" para quedarme tranquilo jajajaja

Edit: Creo que lo he encontrado. Usan una cosa inventada por ellos (creo) que se llama BigPipe en Javascript

Shendraf

Yo utilizo Ajax / DWR para conseguir eso, aunque lo del cambio de url no sé cómo lo harán.

Fr4nk0

#2 pero te mantiene el contenido fijo entre el cambio de página? es decir, el chat de facebook está abajo a la derecha y cambias de página y sigue estando ahi con el mismo contenido q tenía y además entre el cambio de página (desaparece una, se pone en blanco y aparece la siguiente) el chat sigue viéndose, no se ha vuelto blanco como el resto de la página.

Yo he trabajado y sigo trabajando aplicaciones web y utilizo Ajax para cargar contenido a petición del cliente y hacer la carga de páginas más liviana. Pero hoy me fijé en eso (que según he leído en lo de BigPipe que puse en el primer post, es relativamente nuevo, la noticia es de Junio así que será de Mayo o Junio esa nueva característica) y yo recuerdo que antes el chat desaparecía y volvía a aparecer con el contenido que tuviera, pero ya no, ya se queda fijo como he comentado.

Shendraf

Lo del chat al cambiar de página seguramente sea porque no cambia de página sino que carga un div con nuevo contenido, haciendo un include de otra página y consultado datos del servidor. Ellos tienen la web principal dividida en módulos y cada uno de ellos los cargan con:

big_pipe.onPageletArrive({id: ?pagelet_composer?, content=<HTML>, css=[..], js=[..], ?})

el id es el módulo, el content es el código html que se incluirá, el css, el js, etc. Está muy bien explicado en la web sobre BigPipe que has puesto.

Navegando sobre esto he encontrado algo curioso: http://livepipe.net/ EDIT: Nah, no tiene nada que ver

eXtreM3

No entiendo el concepto que dices de que carga divs diferentes cada vez que navegas por la web. Si cargases solamente divs... no cambiaría la url no?

Es como el chat del tuenti, puedes estar hablando con alguien y ver fotos (cada foto tiene una url única) que la ventana del chat va a seguir ahí en primer plano, incluso respondiendo a tiempo real si tu contacto está escribiendo un mensaje.

Me huele a conspiración... :clint: go_Ogle estará detrás de todo esto :qq:

suaveSHOW

la razón de que no recarge la página es porque esta usando # en la url, entonces les permite guardar la direccion actual por si quieres refrescar tu mismo la pagina saber a donde ir, pero en realidad la página sigue siendo la misma, solo refrescan con ajax.

Eso creo.

Usuarios habituales

  • suaveSHOW
  • eXtreM3
  • Shendraf
  • Fr4nk0