Попытка добавить смещение, когда что-то попадает в область просмотра - PullRequest
1 голос
/ 19 июня 2020

Я нашел jQuery плагин от Реми Шарпа, который я хочу использовать для добавления / удаления классов, когда что-то входит в область просмотра и запускается снова при повторном появлении. Он работает нормально, но срабатывает, как только он появляется в области просмотра, я хочу добавить эффект к элементу, например, плавное появление, это будет скрыто в основном, если срабатывает мгновенно.

Я попытался добавить + 200 к коду, и это работает, но это также +200 при прокрутке назад, что означает, что он сработает до того, как войдет в область просмотра при прокрутке назад. Я не могу найти способ установить + 200, когда он идет снизу, и - 200, когда он идет сверху, это означало бы, что он всегда будет срабатывать, когда элемент уже немного находится в области просмотра.

Цели должны иметь следующий эффект: - element1 прокручивается почти вне поля зрения - element1 получает класс постепенного исчезновения - element2 входит в область просмотра - element2 получает класс fade-in

При прокрутке вверх противоположное должно произойти, я думаю, что код будет работать для этого, поскольку он может удалить класс, когда он не в области просмотра, и, следовательно, сделать его переключаемым, если я не ошибаюсь. Я также хочу добавить класс к другому элементу, например, к изображению, которое одновременно исчезает.

Я попытался изменить эту строку (36)

top = $el.offset().top,

на эту

top = $el.offset().top + 200,

Работает, но вызывает проблемы с прокруткой вверх.

Я добавил скрипт с кодом сюда: http://jsfiddle.net/36Lgzdyh/

...