Foros del Web » Programando para Internet » Javascript »

Manejo de scroll de pantalla

Estas en el tema de Manejo de scroll de pantalla en el foro de Javascript en Foros del Web. Hola, buen día para todos, Tengo una inquietud y es la siguiente: Estoy construyendo una página en la cual se hace un ingreso de información, ...
  #1 (permalink)  
Antiguo 11/10/2007, 09:14
 
Fecha de Ingreso: septiembre-2007
Mensajes: 18
Antigüedad: 16 años, 7 meses
Puntos: 0
Pregunta Manejo de scroll de pantalla

Hola, buen día para todos,

Tengo una inquietud y es la siguiente:
Estoy construyendo una página en la cual se hace un ingreso de información, eso funciona correctamente, el tema es cómo saber que posición tiene la ventana al momento de hacer el envío de los datos para que cuando me cargue nuevamente la página quede en la misma posición en la que estaba y no en la parte superior como esta pasando al momento, por consiguiente para hacer un nuevo ingreso hay que bajar hasta donde esta esta parte con la barra de desplazamiento vertical; lo que quiero es que si estoy en la mitad de la página por ejemplo, que al momento de hacerse el envío de los datos, y la página se cargue nuevamente siga mostrandome lo que estaba viendo antes de hacer dicho envío, esto como para no tener que estar bajando hasta esta posición cada vez que se realice un envío.

Mejor dicho, lo que necesito es que mi página se comporte tal como lo hace la página del foro en donde vemos todos los mensajes posteados. Si se fijan al actualizar la página, esta queda nuevamente en la posición que estabamos viendo y no mas arriba o abajo de donde estabamos; cómo puedo hacer esto??

Gracias!!

Espero haberme explicado bien y gracias de antemano por sus sugerencias!!

Un saludo

Última edición por juan_miguel; 11/10/2007 a las 09:34
  #2 (permalink)  
Antiguo 11/10/2007, 20:47
Avatar de derkenuke
Colaborador
 
Fecha de Ingreso: octubre-2003
Ubicación: self.location.href
Mensajes: 2.665
Antigüedad: 20 años, 6 meses
Puntos: 45
Re: Manejo de scroll de pantalla

Hola juan_miguel, no es dificil hacer lo que planteas.


Para scrollear a tu gusto el documento, necesitarás estos métodos: window.scrollTo(x,y) y window.scrollBy(x,y). x e y son enteros que representan coordenadas en píxeles en el documento. El primer método es absoluto, el segundo relativo a la posición actual.

Bueno. Para registrar a qué altura del documento está el scroll tendrás que detectarlo con:
window.pageYOffset para FF
window.document.documentElement.scrollTop para IE6
según he podido comprobar. Sus respectivos horizontalmente serían sustituyendo la Y por X en el primero, y sustituyendo Top por Left en el segundo (aunque no sé si los necesitarás).



Ahora, tienes dos maneras de guardar en qué posición estaba el usuario, una vez sabido obtenerla. Puedes hacerlo con cookies (es fácil si buscas las funciones de colocarCookie y leerCookie); o puedes incluir un campo de tipo hidden en tu formulario, y enviar los valores junto con todos los datos de tu formulario.

Si lo haces con las cookies, cada vez que se carga la página comprobaríamos si hay valor anterior: Si lo hay lo restauramos, si no nada. El caso es que puedes guardar la posición cada segundo (por si al usuario le da por refrescar el documento).

Si lo haces con formularios, sólo guardarás la posición en el momento que el pulse el botón enviar... Eso conlleva a que luego recibas los datos con PHP (o tu lenguaje predilecto) y los escribas en javascript para restaurarlos.





Parece complicado, pero es ir pasito a pasito.

Un saludo.
__________________
- Haz preguntas inteligentes, y obtendrás más y mejores respuestas.
- Antes de postearlo Inténtalo y Búscalo.
- Escribe correctamente tus mensajes.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:08.