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

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

Методом "prepend" добавляю контент в "body". Контента достаточно много. Нужно сделать так, чтобы при добавлении нового контента текущее положение скролла было неизменным, точнее, чтобы клиент видел тот блок, который у него был до добавления нового контента. Как это можно сделать ?
  • Вопрос задан
  • 587 просмотров
Подписаться 1 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
  • Академия Эдюсон
    Fullstack-разработчик на JavaScript + ИИ
    11 месяцев
    Далее
  • ProductStar × РБК
    Профессия: Инженер по тестированию + ИИ
    6 месяцев
    Далее
Решения вопроса 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);
Ответ написан
Ваш ответ на вопрос

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

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