Foros del Web » Programando para Internet » Javascript »

Mantener scroll en div siempre abajo

Estas en el tema de Mantener scroll en div siempre abajo en el foro de Javascript en Foros del Web. Hola, queria saber como peudo hacer para mantener el scroll vertical de un div siempre abajo.. ya que tengo un chat y bueno.. quiero que ...
  #1 (permalink)  
Antiguo 01/04/2009, 09:37
 
Fecha de Ingreso: marzo-2007
Mensajes: 103
Antigüedad: 17 años, 1 mes
Puntos: 0
Mantener scroll en div siempre abajo

Hola, queria saber como peudo hacer para mantener el scroll vertical de un div siempre abajo.. ya que tengo un chat y bueno.. quiero que la gente que entre lea lo ultimo que se escribio.. y cuando escriban que el scroll siempre este abajo osea siempre se lea lo que se escribe al ultimo..

Si alguien puede ayudarme, muchas gracias..
  #2 (permalink)  
Antiguo 01/04/2009, 09:41
 
Fecha de Ingreso: marzo-2007
Mensajes: 103
Antigüedad: 17 años, 1 mes
Puntos: 0
Respuesta: Mantener scroll en div siempre abajo

obviamente esta de mas decirle que cuando uno suba el scroll para leer algo q no leyo se quede ahi el scroll..
  #3 (permalink)  
Antiguo 01/04/2009, 09:46
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: Mantener scroll en div siempre abajo

Puedes agregar un id al último elemento agregado (supongo que usas AJAX), y luego accede a él apuntando hacia ese ancla:
Código javascript:
Ver original
  1. location.href = "#idelemento";
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #4 (permalink)  
Antiguo 01/04/2009, 09:50
 
Fecha de Ingreso: marzo-2007
Mensajes: 103
Antigüedad: 17 años, 1 mes
Puntos: 0
Respuesta: Mantener scroll en div siempre abajo

claro pero serian un contador de id.. osea id1, id2, id3... Se que hay una forma mas facil..

Yo encontre algo asi.. pero nose donde estaria el error

Código:
function scrolldown() {
var target = document.getElementById('divchat');

var isScrolledToBottom = target.scrollTop + target.offsetHeight >= target.scrollHeight;

if (isScrolledToBottom) {
target.scrollTop = target.scrollHeight - target.offsetHeight;
}
}

nose como implementarlo

Última edición por Aper; 01/04/2009 a las 10:17
  #5 (permalink)  
Antiguo 01/04/2009, 10:40
 
Fecha de Ingreso: marzo-2007
Mensajes: 103
Antigüedad: 17 años, 1 mes
Puntos: 0
Respuesta: Mantener scroll en div siempre abajo

Queria comentar que con esa funcion ya me anda que siempre es te abajo y que por cada mensaje baje... lo que ahora necesito es que si yo muevo el scroll al medio y siguen escribiendo, se quede ahi... y no que baje, que solo baje cuando este al final de el scroll del div

Saludos
  #6 (permalink)  
Antiguo 01/04/2009, 11:00
 
Fecha de Ingreso: marzo-2007
Mensajes: 103
Antigüedad: 17 años, 1 mes
Puntos: 0
Respuesta: Mantener scroll en div siempre abajo

Quedo asi...

Código:
function doRefresh() {
var scc = document.getElementById('divchat');
new ajax ('chat.php', { 
		postBody: 'reqtype=refresh&file=' + archivochat,
		update: $('chats')
	});
     scc.scrollTop = scc.scrollHeight + scc.offsetHeight;
}
Simpre que hace el refresh pone abajo de todo al scroll.. ahora, yo quiero que cuando este abajo de todo el scroll baje, pero cuando ester al medio no...

Saludoas
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 13:52.