Задать вопрос

Как сделать скролл без возврата?

Всем привет!) Есть длинный список слов в один столбец, сначала должно показываться последнее слово внизу, а при прокрутке вверх можно было посмотреть остальные.

Использую $("#mcaht").scrollTop(90000);
Все хорошо, показывается последнее слово, но при прокрутке возвращает обратно к этому последнему слову. Как сделать, чтобы отображалось последнее слово и при этом я мог спокойно скроллить?

<script>
	function load_messes()
		{
			$.ajax({
					type: "POST",
					url:  "chatread.php",
					data: "req=ok",
					success: function(test)
					{
						$("#mcaht").empty();
						$("#mcaht").append(test);
						$("#mcaht").scrollTop(90000);
					}
			});
		}
	</script>
  • Вопрос задан
  • 343 просмотра
Подписаться 1 Оценить 3 комментария
Решения вопроса 1
var scrolled;

function load_messes()
{
  $.ajax({
      type: "POST",
      url:  "chatread.php",
      data: "req=ok",
      success: function(test)
      {
        var $mcaht = $("#mcaht"),
          scroll = $mcaht.scrollTop(),
          messageCount = $mcaht.children().length;

        $mcaht.empty().append(test);

        scroll && $mcaht.scrollTop(scroll);

        if(!scrolled || messageCount < $mcaht.children().length) {
          $mcaht.scrollTop(90000);
          !scrolled && (scrolled = true);
        }

      }
  });
}

Псевдо-чат
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы