#javascript #scrolltop
#javascript #scrolltop
Вопрос:
Например, у меня есть тег div с полосой прокрутки справа от тега div.
Я хочу показать div с последней строкой, поэтому у меня есть это:
document.getElementById("divscroll").scrollTop = 250000;
Я могу заставить его прокручиваться до конца в Firefox, но никогда не выполняю событие IE с большим числом!
Существует ли какой-нибудь простой скрипт для кроссбраузерной обработки (не jQuery или какой-либо другой большой фреймворк!)
Ответ №1:
scrollTop
работает во всех основных браузерах.
Для прокрутки до нижней части элемента:
var div = document.getElementById('divscroll');
div.scrollTop = div.scrollHeight - div.clientHeight;
clientHeight
также работает в разных браузерах, и scrollHeight
в основном работает.
Ответ №2:
Убедитесь, что свойство overflow установлено:
<div id="divscroll" style="height: 100px; width: 100px; overflow: scroll;">
//// something something
</div>
Комментарии:
1. И установите высоту в моем случае.
Ответ №3:
Попробуйте установить положение прокрутки на реальную цифру, а не просто произвольное большое число:
document.getElementById("divscroll").scrollTop = document.getElementById("divscroll").scrollHeight;
Комментарии:
1.
scrollHeight
все равно будет больше максимально возможного значенияscrollTop
(если только элемент не имеет нулевой высоты, но это уже другая проблема).