Кросс-браузерный метод для установки ScrollTop элемента? - PullRequest
15 голосов
/ 13 июня 2011

Например, у меня есть тег div с полосой прокрутки справа от тега div.
Я хочу показать div с последней строкой, поэтому у меня есть это:

document.getElementById("divscroll").scrollTop = 250000;

Я могу сделать прокрутку до конца в Firefox, но никогда не преуспею с событием IE с большим числом!
Есть ли какой-нибудь простой сценарий Cross-borwser (не JQuery или какая-либо большая структура!)

Ответы [ 3 ]

15 голосов
/ 13 июня 2011

scrollTop работает во всех основных браузерах.

Для прокрутки к нижней части элемента:

var div = document.getElementById('divscroll');
div.scrollTop = div.scrollHeight - div.clientHeight;

clientHeight также работаетво всех браузерах и scrollHeight в основном работает .

5 голосов
/ 13 июня 2011

Убедитесь, что установлено свойство overflow :

<div id="divscroll" style="height: 100px; width: 100px; overflow: scroll;">
 //// something something 
</div>
1 голос
/ 13 июня 2011

Попробуйте установить положение прокрутки для реальной цифры, а не просто для произвольного большого числа:

document.getElementById("divscroll").scrollTop = document.getElementById("divscroll").scrollHeight; 
...