@YanaLins
web

Как определить, что блок находится в центре viewport, используя IntersectionObserver?

Механика как должно работать:
  1. пользователь скроллит страницу сверху вниз: при попадании блока во viewport (внизу страницы) фон затеняется. Пользователь скроллит дальше, когда блок находится в середине экрана, затенение пропадает.
  2. пользователь скроллит страницу снизу вверх: при попадании блока во viewport (вверху страницы) фон затеняется. Пользователь скроллит дальше вверх, затенение пропадает, когда блок оказывается в середине экрана.

Не получается прописать условие, используя IntersectionObserver, чтобы затенение пропадало, когда блок в центре.
Сейчас блок пропадает только когда срабатывает threshold.
В центре он не срабатывает, поэтому не удается засечь пересечение центра.
И rootMargin readOnly, динамически не изменить.

https://jsfiddle.net/YanaLins2017/omfuapq4/
  • Вопрос задан
  • 202 просмотра
Решения вопроса 1
@historydev Куратор тега JavaScript
Редактирую файлы с непонятными расширениями
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы