Вроде все делаю правильно. Однако не работает.
С использованием JQuery, работает. На нативном не работает. Почему и как это исправить?
let blocks = document.getElementsByClassName('block');
let tops = [];
let current = 2;
for (let i = 0; i < blocks.length; ++i) {
tops.push(blocks[i].offsetTop);
}
// Этот способ работает
// $(document.documentElement).scrollTop(tops[current]);
// Не работает ни один способ
document.documentElement.scrollTo(tops[current] ,0);
window.scrollTo(tops[current] ,0);
// Для проверки
// console.log(tops);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class='block'>
<p>Text</p>
<p>Text</p>
<p>Text</p>
<p>Text</p>
<p>Text</p>
<p>Text</p>
<p>Text</p>
<p>Text</p>
<p>Text</p>
</div>
<div class='block'>
<p>Text</p>
<p>Text</p>
<p>Text</p>
<p>Text</p>
<p>Text</p>
<p>Text</p>
<p>Text</p>
<p>Text</p>
<p>Text</p>
</div>
<div class='block'>
<p>Text</p>
<p>Text</p>
<p>Text</p>
<p>Text</p>
<p>Text</p>
<p>Text</p>
<p>Text</p>
<p>Text</p>
<p>Text</p>
</div>
<div class='block'>
<p>Text</p>
<p>Text</p>
<p>Text</p>
<p>Text</p>
<p>Text</p>
<p>Text</p>
<p>Text</p>
<p>Text</p>
<p>Text</p>
</div>
<div class='block'>
<p>Text</p>
<p>Text</p>
<p>Text</p>
<p>Text</p>
<p>Text</p>
<p>Text</p>
<p>Text</p>
<p>Text</p>
<p>Text</p>
</div>
Сборка персонального компьютера от Artline: умный выбор для современных пользователей