Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   scrollTo не работает в Chrome (https://javascript.ru/forum/events/34873-scrollto-ne-rabotaet-v-chrome.html)

daima 22.01.2013 18:47

scrollTo не работает в Chrome
 
<!DOCTYPE html>
<html lang="ru">
<head>
<meta charset="utf-8" />
<title></title>
</head>
<body>
<div>..опа</div>
<div style="width:300px; height:12000px; background:red"></div>

  <script type="text/javascript">
	window.onload = function()
	{
			window.scrollTo( 0, 2000 );
	
	}

</script>

 </body>
</html>




Фишка в чем: на верху браузера есть некий неинтересный юзеру контент. Чтобы он его не увидел, мы прокручиваем страницу с помощью window.scrollTo( 0, 2000 );
Скрипт работает везде кроме.. нет, в ие все замечательно. Почему-то тупит хром и не прокручивает страницу вниз. В чем косяк?

danik.js 22.01.2013 23:02

Версия 23.0.1271.95 m - отлично работает

daima 23.01.2013 09:18

Версия 24.0.1312.52 m
Загрузили страницу, прокрутили вниз, жмем ф5,стрл-р, стрл-ф5 один фиг

danik.js 23.01.2013 10:43

Chrome восстанавливает положение скроллбара при F5. А ваши юзеры должны будут жать F5? Хотя по Ctrl+F5 ничего не должно восстановиться, я бы назвал это багой. При обычных переходах по страницам все работает как надо. Если же вам нужно чтобы юзеры жали F5 и их кидало туда, куда вы хотите, то сработает такой трюк:
window.onload = function()
    {
            setTimeout(function(){ window.scrollTo( 0, 2000 ) });
     
    }

И вешать надо не на window.onload, а на DOMContentLoaded (проще через jQuery(document).ready( .. ) )
Еще лучше сделать анимированную прокрутку. Опять же, проще на jQuery, но не обязательно.


Часовой пояс GMT +3, время: 19:49.