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

Как оставить положение скролла неизменным при добавлении контента?

Методом "prepend" добавляю контент в "body". Контента достаточно много. Нужно сделать так, чтобы при добавлении нового контента текущее положение скролла было неизменным, точнее, чтобы клиент видел тот блок, который у него был до добавления нового контента. Как это можно сделать ?
  • Вопрос задан
  • 558 просмотров
Подписаться 1 Оценить Комментировать
Решения вопроса 1
In4in
@In4in
°•× JavaScript Developer ^_^ ו°
Пригласить эксперта
Ответы на вопрос 1
madmaker
@madmaker
Full stack программист
Вот, что подсказывают коллеги:
Делаем prepend, измеряем общий outerheight, задаем scrolltop в это значение. Че-то типа такого:

var $current_top_element = $('body').children().first();
$('body').prepend(other_elements);

var previous_height = 0;
$current_top_element.prevAll().each(function() {
  previous_height += $(this).outerHeight();
});

$('body').scrollTop(previous_height);
Ответ написан
Ваш ответ на вопрос

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

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