Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 13.02.2009, 10:59
progi2007
 
Сообщений: n/a

Автоматическая прокрутка дива вниз
Подскажите как сделать, что бы прокрутка в диве автоматически опускалась вниз, желательно варианты решения на jquery.
Заранее всем спасибо.
Ответить с цитированием
  #2 (permalink)  
Старый 13.02.2009, 11:21
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

divElement.scrollTop = 9999;
Ответить с цитированием
  #3 (permalink)  
Старый 13.02.2009, 12:13
progi2007
 
Сообщений: n/a

Сообщение от Kolyaj Посмотреть сообщение
divElement.scrollTop = 9999;
Спасибо помогло.
Ответить с цитированием
  #4 (permalink)  
Старый 07.03.2009, 13:58
Spyke
 
Сообщений: n/a

Подскажите куда это вставить? Желательно простенький примерчик. Заранее спасибо.
Ответить с цитированием
  #5 (permalink)  
Старый 07.03.2009, 14:19
...
Отправить личное сообщение для Zibba Посмотреть профиль Найти все сообщения от Zibba
 
Регистрация: 13.10.2008
Сообщений: 225

Вешаете обработчик (на onclick/onload/еще какое нибудь событие), далее получаете элемент при помощи getElementById(element) и свойству scrollTop этого элемента присваиваете значение.
Ответить с цитированием
  #6 (permalink)  
Старый 07.03.2009, 14:56
Spyke
 
Сообщений: n/a

<div id="messages" style="height: 400px; overflow: auto;" onload="this.scrollTop = 9999;"></div>

я правильно понял?.. все равно что-то не получается =(
Ответить с цитированием
  #7 (permalink)  
Старый 07.03.2009, 14:59
...
Отправить личное сообщение для Zibba Посмотреть профиль Найти все сообщения от Zibba
 
Регистрация: 13.10.2008
Сообщений: 225

Ну еще бы получилось с overflow: auto, вопрос был про scroll следовательно и overflow: scroll;
Вот пример:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
	<head>
		<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
		<title>Scroll</title>
		<style type="text/css">
			#scroll{
				height:100px;
				overflow:scroll;
				background-color:#ddd;
			}
		</style>
		<script type="text/javascript">
			window.onload = function(){
				document.getElementById('scroll').scrollTop = 9999;
			}
		</script>
	</head>
	<body>
		<div id="scroll">
			<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br>Конец
		</div>
	</body>
</html>

Последний раз редактировалось Zibba, 07.03.2009 в 15:07. Причина: добавил пример
Ответить с цитированием
  #8 (permalink)  
Старый 07.03.2009, 15:13
Spyke
 
Сообщений: n/a

при onclick получается... но как сделать автоматически без участия пользователя? просто у меня чат и нужно чтобы при появлении нового сообщения автоматом вниз пролистывалось... onresize тоже не работает... =(

P.S. а что ты там говоришь про window.onload? Если можно пиши сразу мой исправленный вариант. Заранее спасибо!
Ответить с цитированием
  #9 (permalink)  
Старый 07.03.2009, 15:16
...
Отправить личное сообщение для Zibba Посмотреть профиль Найти все сообщения от Zibba
 
Регистрация: 13.10.2008
Сообщений: 225

Ну если при появлении нового сообщения, то если при его появлении полностью перезагружается страница (см. пример выше), если сообщения поступают асинхронно, то вешать на функцию срабатывающую по событию прихода сообщения и все.
Ответить с цитированием
  #10 (permalink)  
Старый 07.03.2009, 20:45
Отправить личное сообщение для Андрей Параничев Посмотреть профиль Найти все сообщения от Андрей Параничев
 
Регистрация: 21.02.2008
Сообщений: 1,250

Чтоб автоматически и нет возможности вписать код в функцию, которая добавляет сообщение, то можно и интервал сделать:
window.onload = function(){
   var scrollinDiv = document.getElementById('scroll');
   setInterval(function() {          
        scrollinDiv.scrollTop = 9999;
   }, 100);
}
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск