Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 03.06.2014, 15:07
Кандидат Javascript-наук
Отправить личное сообщение для FanAizu Посмотреть профиль Найти все сообщения от FanAizu
 
Регистрация: 08.03.2011
Сообщений: 148

Как опустить скролл вниз страницы
При загрузке страниц(страница в высоту очень большая) нужно, чтобы отображался самый низ страницы. Вот код, который написал для этого:

$(document).ready
(
    function()
    {
        $('body, html').scrollTop($(document).height());
    }
);


Он работает везде, но в хроме и сафари следующая ситуация:
пользователь открывает страницу, она опускается в самый низ моим кодом, все гуд. Затем пользователь скроллить, например, на 500px вверх и жмет f5, страница перезагружается, опускается моим кодом в самый низ, а затем самое неприятное - браузер поднимает страницу на 500px, на которые проскроллил пользователь до перезагрузки страницы! Как с этим бороться?
Ответить с цитированием
  #2 (permalink)  
Старый 03.06.2014, 18:18
Отправить личное сообщение для Octane Посмотреть профиль Найти все сообщения от Octane  
Регистрация: 10.07.2008
Сообщений: 3,873

Не уверен, но вроде бы когда браузер восстанавливает предыдущее положении скрола, не возникает события scroll, поэтому при загрузке страницы можно по таймеру следить за scrollTop, если он изменится без события, то можно будет прокрутить страницу вниз.
Ответить с цитированием
  #3 (permalink)  
Старый 03.06.2014, 18:46
Кандидат Javascript-наук
Отправить личное сообщение для FanAizu Посмотреть профиль Найти все сообщения от FanAizu
 
Регистрация: 08.03.2011
Сообщений: 148

Сообщение от Octane Посмотреть сообщение
Не уверен, но вроде бы когда браузер восстанавливает предыдущее положении скрола, не возникает события scroll, поэтому при загрузке страницы можно по таймеру следить за scrollTop, если он изменится без события, то можно будет прокрутить страницу вниз.
оно возникает, проверенно. только браузер потом возвращает в место скролла, которое было до перезагрузки страницы
Ответить с цитированием
  #4 (permalink)  
Старый 19.01.2017, 12:21
Новичок на форуме
Отправить личное сообщение для raserad Посмотреть профиль Найти все сообщения от raserad
 
Регистрация: 19.01.2017
Сообщений: 1

Все намного банальнее. Просто установи вызов функции прокрутки вниз через setTimeout. Задай таймаут примерно в 100 миллисекунд и вуаля! Никаких проблем)))
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
как отменить скролл в мобильном браузере только для одного элемента? mitiya Общие вопросы Javascript 5 09.08.2012 23:38
Как при прокрутке страницы оставлять элемент на месте? FRIE jQuery 1 02.08.2012 20:54
Скролл как вконтакте shilinpavel Javascript под браузер 3 14.06.2012 18:44
Как разделять страницы при выводе отчета ilshat Events/DOM/Window 7 10.12.2009 10:24
Как выдавать ошибку при сбросе загрузки страницы? AvaGet Общие вопросы Javascript 2 11.12.2008 19:04