Ver Mensaje Individual
  #20 (permalink)  
Antiguo 13/01/2009, 11:47
Avatar de HackmanC
HackmanC
 
Fecha de Ingreso: enero-2008
Ubicación: Guatemala
Mensajes: 1.817
Antigüedad: 16 años, 9 meses
Puntos: 260
Sonrisa Respuesta: ¿Uso de # como variable?

Hola,

En los tres casos, gmail, devianart y apple, se puede observar el clásico código spagetti de Javascript, con intención de ofuscar el código. (En gmail está claramente ofuscado en la versión que me muestra) y me tomaría mucho tiempo debuggear esos códigos para demostrar que evidentemente es Javascript. (Además que no se debe hacer ).

Pero en Apple (creo que es el más limpio), se puede observar que usan prototype y scriptaculous, y en varias partes redefinen varias clases con prototype:

Código:
....
	// Populates this control's view with the necessary contents
	_layout: function() {
		this.container = $(document.createElement('div'));
		this.container.addClassName('pagenav');

		this.previousControl = this._createControl('previous');
		this.container.appendChild(this.previousControl);
....
Posiblemente, (tomaría mucho tiempo demostrarlo), primero amarran un evento al click en ese link, (usando clases y prototype), al suceder el evento, cambian el contenido con Javascript, (mostrando, ocultando y generando partes), y por último navegan hacia esa misma página pero con el contenido nuevo (location).

Navegar de nuevo con location pareciera inútil, pero posiblemente se obtiene el objetivo que mencionaba buzu en su primer post:

Cita:
... al parecer lo usan para lograr bookmark friendly websites usando ajax ...
Si hago un bookmark de la página 2, como Javascript siempre modifica la página, no solamente cuando presiono el vínculo a la página 2, siempre me va a llevar al lugar correcto, aunque inicialmente estuviera oculto o no existiera (lo va a mostrar con Javascript o posiblemente Ajax, como mencionaba Mikmoro usando parameters).

(Desde Javascript se pueden crear comportamientos muy complejos, pero en este caso no es una variable del lado del servidor)

Saludos,

Última edición por HackmanC; 13/01/2009 a las 12:16 Razón: quote