Ответ 1
Я проверял хром, он работал хорошо. Иногда setTimeout
делает трюк:)
<script type="text/javascript">
window.onload=function(){
setTimeout(function(){
scrollTo(0,-1);
},0);
}
</script>
Я столкнулся с проблемой, которая на самом деле является "функцией" в Chrome. Как известно большинству из вас, Chrome запоминает позицию прокрутки, в которую он возвращается, всякий раз, когда вы возвращаетесь на страницу. И у меня есть проблема с этим.
Есть ли способ переопределить это без уведомления пользователя?
Mees
Сбой проверки:
Я проверял хром, он работал хорошо. Иногда setTimeout
делает трюк:)
<script type="text/javascript">
window.onload=function(){
setTimeout(function(){
scrollTo(0,-1);
},0);
}
</script>
В Chrome 46+ поведение автоматической прокрутки можно отключить с помощью history.scrollRestoration:
if ('scrollRestoration' in history) {
history.scrollRestoration = 'manual';
}
источник: https://developers.google.com/web/updates/2015/09/history-api-scroll-restoration
x = 0; //horizontal coord
y = document.height; //vertical coord
window.scroll(x,y);
Некоторые Javascript, подобные этому, могут быть очень удобными для управления автоматической прокруткой.
Это зависит от того, насколько вы счастливы, что прокрутка будет просто настроена автоматически на верх, или вы действительно ищете стандартную версию Chrome, чтобы переместить страницу в последнюю позицию прокрутки, чтобы полностью отключиться?
Что вы сейчас пытаетесь использовать для scrollTop()?
Я решил это, присоединив к событию прокрутки, а затем сбросив положение прокрутки при первом прокрутке пользователя. Работает для перезагрузки на месте.
Похож:
var scrollResetOnce = false;
$(window).on("scroll", function() {
if (scrollResetOnce) return;
scrollResetOnce = true;
scrollTo(0, -1);
});
Вот простой способ сделать это.
window.addEventListener('unload', function(e){
document.body.style.display = 'none';
});
Просто устанавливая отображение тела на "нет", вам не нужно беспокоиться о вспышке прокрутки браузера в верхней части страницы до ее выгрузки, а положение прокрутки автоматически будет reset до 0.