Задать вопрос
@Alk90
php, mysql, jquery, css, html, api

Как корректно вернуться назад, при ajax подгрузке контента?

Всем привет! Пытаюсь сделать бесконечную ленту, но сталкиваюсь с проблемой. Допустим, пользователь пролистал 500 постов вниз и решил его открыть, прочитал и кликнул кнопку назад. Какие есть варианты вернуться снова к 500 посту в ленте, кроме открытия поста с помощью ajax, поверх основного контента?
  • Вопрос задан
  • 653 просмотра
Подписаться 4 Простой 4 комментария
Пригласить эксперта
Ответы на вопрос 3
xmoonlight
@xmoonlight
https://sitecoder.blogspot.com
Ориентир: нужный "якорь" (линк) в области отображения и вектор скроллинга страницы относительно него, для подгрузки ленты выше или ниже.

Пишем в куки: URL вместе с якорем к нужному посту в ленте, при возврате с этими куками "схлопываем" всё, что выше нужного поста, чтобы не гонять трафик, и не заставлять браузер/пользователя пролистывать/скроллить вниз и сразу же удаляем куки.

Но обязательно нужно предусмотреть аякс-подгрузку и вверх, если он захочет читать ленту в обратном направлении (поднимаясь вверх).
Ответ написан
OtshelnikFm
@OtshelnikFm
Обо мне расскажет yawncato.com
ВК выбрали наименее проблемный подход - открытие в модальном окне. Даже статьи они открывают в модалке но заполнитель (overlay) делают белым и кажется будто ты на отдельной странице. Закрывается всё это дело обычным кликом по кнопке "Закрыть".

В комментарии к ответу xmoonlight я написал какие геморные ситуации придется решать с вашей идеей открывать именно на новой странице. И это только то что пришло в голову - устройств много и вариантов нестандартного поведения пользователя будет еще больше. Вам потом это исправлять и поддерживать. Хотя если тестирование - ваша стезя - реализуйте. После каждого обновления будете их автоматически запускать и смотреть все накопленные ситуации что ничто не отвалилось.
Ответ написан
Комментировать
xPomaHx
@xPomaHx
1vs9
Обычно достаточно возвращаться не к предыдущей ленте, а к месту в пред ленте, так что при нажатии на кнопку показать еще, нужно двигать пагинацию и в урле писать пейдж = 2, после нажатия назад, возвращаемся на тоже место где будет 500 страница с дефолтным количеством загруженных постов, если очень хочется можно добавить кнопку сверху "загрузить предыдущие"
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы
Rocket Смоленск
от 80 000 до 130 000 ₽
div. Ставрополь
от 40 000 до 90 000 ₽
Wanted. Санкт-Петербург
До 220 000 ₽
18 дек. 2024, в 11:03
5000 руб./за проект
18 дек. 2024, в 10:44
130000 руб./за проект
18 дек. 2024, в 10:02
7000 руб./за проект