В GitHub имеется удобная библиотека:
https://github.com/serkanyersen/ifvisible.js
Пример:
// If page is visible right now
if( ifvisible.now() ){
// Display pop-up
openPopUp();
}
Я тестировал версию 1.0.1 во всех браузерах, которые у меня есть, и могу подтвердить, что он работает с:
... и, возможно, все более новые версии.
Не работает в полной мере с:
.now()
всегда возвращает true
для меня)