2013-11-30 3 views
3

При обновлении длинной страницы HTML позиция прокрутки инициализируется вверху, а затем переходит в последнюю позицию прокрутки.Запрет прокрутки при обновлении длинной HTML-страницы

Есть ли способ остановить это поведение прокрутки прокрутки при обновлении и просто инициализировать положение прокрутки до последней позиции прокрутки?

+0

Вопрос в том, что вы используете собственный javascript или библиотеку, такую ​​как jQuery? –

ответ

5

Как насчет использования функции html5 localStorage.

window.addEventListener('scroll', function() { 
    localStorage.scrollX = window.scrollX; 
    localStorage.scrollY = window.scrollY; 
}) 
window.addEventListener('load',function() { 
    window.scrollTo(localStorage.scrollX || 0, localStorage.scrollY || 0); 
}) 

Проверьте это на http://jsfiddle.net/g5NKG/10/show/

0

Это звучит, как вы, возможно, потребуется метод .scrollTop() из JQuery найдено here

Итак:

$(document).ready(function(){ 
    $(this).scrollTop(0); 
}); 

Из ссылки в комментариях, это также быстро исправить:

$(document).scrollTop(0); 
+0

последняя позиция прокрутки! –

+0

Да, @TomChung, есть несколько других опций [здесь] (http://stackoverflow.com/questions/3664381/html-force-page-scroll-position-to-top-at-page-refresh) – Pippin

0

Не такое поведение браузера просто по умолчанию? То, что вы описываете, звучит так, как все браузеры мэров уже делают это так.

+0

Да , браузеры не переустанавливают страницу на верх страницы, если вы не сообщите об этом при обновлении. – Pippin

Смежные вопросы