Добрый день.
На странице есть фиксированный элемент.
А также есть чередующейся блоки у который через одного есть класс dark.
Нужно при скролле узнать класс блока, который находится под фиксированным элементом.
Как это сделать?
Я вот написал код, только он работает, если скроллишь страницу с самого верха.
if ($('body').hasClass('page-template-front-page')) {
let navigation = $('#js-navigation');
let navigationOffsetTop = navigation.offset().top;
let dark0 = $('.dark-scroll').eq(0);
let dark0OfsetTop = dark0.offset().top - navigationOffsetTop;
let dark0height = dark0.innerHeight();
let dark1 = $('.dark-scroll').eq(1);
let dark1OfsetTop = dark1.offset().top - navigationOffsetTop;
let dark1height = dark1.innerHeight();
let dark2 = $('.dark-scroll').eq(2);
let dark2OfsetTop = dark2.offset().top - navigationOffsetTop;
let dark2height = dark2.innerHeight();
let dark3 = $('.dark-scroll').eq(3);
let dark3OfsetTop = dark3.offset().top - navigationOffsetTop;
let dark3height = dark3.innerHeight();
let dark4 = $('.dark-scroll').eq(4);
let dark4OfsetTop = dark4.offset().top - navigationOffsetTop;
let dark4height = dark4.innerHeight();
let dark5 = $('.dark-scroll').eq(5);
let dark5OfsetTop = dark5.offset().top - navigationOffsetTop;
let dark5height = dark5.innerHeight();
$(document).on('scroll', function () {
let doc = $(this);
let docScrollTop = doc.scrollTop();
if(docScrollTop > dark0OfsetTop && docScrollTop < (dark0height + dark0OfsetTop)){
if(navigation.hasClass('light')){
navigation.removeClass('light');
}
}else if(docScrollTop > dark1OfsetTop && docScrollTop < (dark1height + dark1OfsetTop)){
if(navigation.hasClass('light')){
navigation.removeClass('light');
}
}else if(docScrollTop > dark2OfsetTop && docScrollTop < (dark2height + dark2OfsetTop)){
if(navigation.hasClass('light')){
navigation.removeClass('light');
}
}else if(docScrollTop > dark3OfsetTop && docScrollTop < (dark3height + dark3OfsetTop)){
if(navigation.hasClass('light')){
navigation.removeClass('light');
}
}else if(docScrollTop > dark4OfsetTop && docScrollTop < (dark4height + dark4OfsetTop)){
if(navigation.hasClass('light')){
navigation.removeClass('light');
}
}else{
if(!navigation.hasClass('light')){
navigation.addClass('light');
}
}
});
}