Как программно прокрутить div с собственными полосами прокрутки?

У меня есть HTML-страница с внутренним DIV, используемым для контента. Внутренний DIV имеет свои полосы прокрутки. Я хотел бы автоматически перейти к определенной позиции в DIV.

Как я могу это сделать? (Обратите внимание, что я НЕ хочу автоматически прокручивать полосы прокрутки окна - я уже знаю, как это сделать)

Требуется кроссплатформенное решение

Ответы на вопрос(5)

scrollTo JQuery плагин, Это действительно удобный плагин, который позволяет вам анимировать прокрутку в любом элементе. Я настроил небольшой пример вjsFiddle это демонстрирует, как это работает. В этом примере показано, как вы «прокручиваете до» третийp во-первыхdivа потом второйp во-вторыхdiv, Стоит отметить, что для обеспеченияposition().top правильно, вам нужно установить содержаниеdiv иметьposition: relative;, Надеюсь, это не слишком большая проблема, хотя. :)

есть это.scrollTo() метод, который может помочь вам прокрутить ваши div. попробуйте для получения дополнительной информации посетитьВот

Решение Вопроса

Див имеетscrollTop свойство, которое вы можете установить (и его приятель,scrollLeft).

jsFiddle Demo

scrollTop on MDN

scrollLeft on MDN

демо с использованием jQuery который использует известный элемент с идентификатором внутриdiv.

$(function() {
    var testOffset = $('#test').offset(),
        scrollOffset = $('#scroll').offset();
    $('#scroll').scrollTop(testOffset.top - scrollOffset.top);
});​

Если вы знаете только, насколько далеко, с точки зрения пикселей, а не конкретного элемента, он может быть адаптирован к:

$(function() {
    $('#scroll').scrollTop(100);
});​

<div id="#scroll-here">Test..</div>

и добавьте такую ссылку:

<a href="#scroll-here">Scroll to Test</a>

если вы хотите плавную прокрутку вы можете проверитьэтот

Ваш ответ на вопрос