Как я могу использовать jquery для прокрутки вправо до нижней части iframe или страницы?
224
Если вам нужна хорошая медленная прокрутка анимации, для любого якоря с href="#bottom"
этим прокрутите вас вниз:
$("a[href='#bottom']").click(function() {
$("html, body").animate({ scrollTop: $(document).height() }, "slow");
return false;
});
Не стесняйтесь менять селектор.
scrollTop () возвращает количество пикселей, которые скрыты от просмотра в прокручиваемой области, поэтому задайте его:
будет фактически выходить за пределы нижней части страницы. Чтобы прокрутить на самом деле «стоп» внизу страницы, нужно вычесть текущую высоту окна браузера. Это позволит использовать смягчение при необходимости, поэтому оно становится:
источник
easeOutQuint
требуется плагин, сам jQuery имеет толькоlinear
иswing
.<!DOCTYPE html>
on в Chrome, Chrome вернет одинаковое значение для окна и высоты документа, в этом случае$(document).height()-$(window).height()
всегда будет возвращаться 0. См. Здесь: stackoverflow.com/questions/12103208/…Например:
источник
После того, как эта тема не сработала для меня из-за моей конкретной потребности (прокрутка внутри определенного элемента, в моем случае текстовая область), я обнаружил это в глубине души, которая может оказаться полезной для кого-то другого, читающего это обсуждение:
Альтернатива на планетном облаке
Поскольку у меня уже была кэшированная версия моего объекта jQuery (
myPanel
в приведенном ниже коде это объект jQuery), код, который я добавил в свой обработчик событий, был просто так:(спасибо Бен)
источник
var d = $('#mydiv'); d.scrollTop (d[0].scrollHeight - d.height ());
Простая функция, которая переходит (мгновенно прокручивается) в конец всей страницы. Он использует встроенный
.scrollTop()
. Я не пытался адаптировать это для работы с отдельными элементами страницы.источник
$(document).scrollTop($(document).height());
Этот работал для меня:
источник
Если вас не волнует анимация, вам не нужно получать высоту элемента. По крайней мере, во всех браузерах, которые я пробовал, если вы дадите
scrollTop
число, которое больше максимума, оно просто прокрутится вниз. Так что дайте ему как можно большее число:Если вы хотите прокрутить страницу, а не какой-либо элемент с полосой прокрутки, просто сделайте
myScrollingElement
равным body, html.Поскольку мне нужно сделать это в нескольких местах, я написал быструю и грязную функцию jQuery, чтобы сделать ее более удобной, например:
Так что я могу сделать это, когда я добавляю материал Buncho:
источник
Сценарии, упомянутые в предыдущих ответах, такие как:
или
$(window).scrollTop($(document).height());
не будет работать в Chrome и будет нервным в Safari, если
html
тег в CSS имеетoverflow: auto;
набор свойств. У меня ушло почти час, чтобы понять.источник
Я использую этот код для прокрутки чата, когда приходят новые сообщения.
источник