Добавление класса элементу при прокрутке к этому элементу
Доброго времени суток!
Нужна помощь! Нужно добавлять класс элементу при прокрутке к нему. То есть есть элемент, например с классом title, нужно что бы когда юзер докручивал сайт до него, автоматом добавлялся бы еще один класс. Хочу реализовать таким способом вызов анимации! Очень надеюсь на вашу помощь! |
function getOffsetTop(self) {
var y = 0;
if(self.offsetParent) while (true) {
y += self.offsetTop;
if(!self.offsetParent) break;
self = self.offsetParent;
}
else if(self.y) y += self.y;
return y;
}
var elem = document.querySelector('.title'),
elemPosTop = getOffsetTop(elem);
window.onscroll = function() {
if((this.scrollTop || document.documentElement.scrollTop) == elemPosTop) {
elem.classList.add('new-class');
this.onscroll = null;
}
}
Как-то так. |
Не работает( Есть еще варианты?
|
|
Функции для определения координат взял из учебника Ильи:
http://learn.javascript.ru/play/MPGTzb Работает только для вертикально прокрутки, для горизонтальной делается аналогично. |
|
| Часовой пояс GMT +3, время: 21:46. |