Как должен работать scrollTop в JQuery? - PullRequest
13 голосов
/ 20 июля 2009

Я в замешательстве насчет scrollTop().
Документы jQuery говорят, что должны отображать число, представляющее смещение scrollTop для данного элемента, но, как и в моем собственном сценарии, в их демонстрации возвращается «0».

Настройка scrollTop вручную прекрасно работает, как и при использовании команды $(window).scrollTop().

Возвращает ли scrollTop() ТОЛЬКО значения, связанные с элементами, которые сами содержат полосы прокрутки (например, элемент со свойством CSS overflow:scroll)?

1 Ответ

26 голосов
/ 20 июля 2009

Из этого следует, что элементы с полосами прокрутки в позициях, отличных от верхней, будут иметь scrollTop> 0. Если у вас есть элемент без полос прокрутки, то можно ожидать, что их позиция scrollTop равна 0, поскольку им некуда прокручиваться.

Я не совсем уверен, в чем проблема.

РЕДАКТИРОВАТЬ: На всякий случай, если это не объяснено должным образом в документах jQuery:

scrollTop() => положение полосы прокрутки для элемента (окно / div / что-либо прокручиваемое)

$("#element").offset().top => положение элемента относительно страницы

$("#element").offset().top - $(window).scrollTop() => положение элемента относительно области прокрутки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...