По состоянию на февраль 2013 года, говоря о всех новых, первоклассных API (включая экспериментальные и даже сумасшедшие), вы можете указать, как определить, существует ли в настоящее время конкретный DOM node в окне просмотра или нет.
Кросс-браузерность - плюс. Гибкость и универсальность - еще большие плюсы.
Итак, в основном мне нужно что-то вроде is_in_viewport (dom_node), который возвращает Boolean.
Некоторые разъяснения. Позвольте нам по видимости означать, что по крайней мере один пиксель элемента физически отображается в окне просмотра (что необязательно является окном).
По классическим подходам я имею в виду:
- размер и положение измерительного элемента с использованием таких свойств, как offsetTop, offsetLeft и т.д.
- с помощью метода getBoundingClientRect
Итак, проще говоря, я ищу какой-то API, который скрывает от меня уровень абстракции, который касается прямых измерений и последующих вычислений.