У меня есть массив (это позиции смещения неизвестного количества элементов на странице). Я хочу иметь возможность добавлять / удалять классы, когда пользователи прокручивают это число пикселей на странице вниз.
var offsetPositions = [200,500,700,1000,1100,1500];
$(window).scroll(function(){
var scrolled = $(window).scrollTop();
});
Дело в том, что позиции смещения в массиве - это позиции верхнего и нижнего смещения. Таким образом, используя приведенный выше пример, вершина первого элемента составляет 200 пикселей, а нижняя - 500 пикселей. У следующего есть вершина в 700px и низ в 1000px. Так что они попарно, и их всегда будет четное число.
Мне нужен эффект, когда позиция прокрутки достигает 1,3,5,7 элементов в массиве и выключается, когда она достигает 2 4,6,8 и др. c. Примерно так:
if (scrolled > 200) {
// add class
}
if (scrolled > 500) {
// remove class
}
if (scrolled > 700) {
// add class
}
if (scrolled > 1000) {
// remove class
}
Конечный результат, являющийся классом, существует только при прокрутке элементов, а не в промежутках между ними.
Я не могу понять, как добавить для l oop для массива внутри функции прокрутки, чтобы дать мне то, что мне нужно. Я также подумывал разбить массив на шансы и четности, но попытка сравнить два массива так, как я хочу, была более сложной. Я просто ищу предложения о том, как с ним go, или я пропускаю что-то очевидное.