Ответ 1
Вы можете проверить $(document).scrollTop()
внутри обработчика прокрутки:
var $document = $(document),
$element = $('#some-element'),
className = 'hasScrolled';
$document.scroll(function() {
if ($document.scrollTop() >= 50) {
// user scrolled 50 pixels or more;
// do stuff
$element.addClass(className);
} else {
$element.removeClass(className);
}
});
Если добавление имени класса - это все, что вам нужно (никаких других действий не требуется), это можно сократить до:
var $document = $(document),
$element = $('#some-element'),
className = 'hasScrolled';
$document.scroll(function() {
$element.toggleClass(className, $document.scrollTop() >= 50);
});
См. http://api.jquery.com/scrollTop/.
Обратите внимание, что использовать обработчики событий scroll
очень неэффективно.