Я понимаю, что вы можете легко проверить для фокусировки, используя что-то вроде этого:В Javascript, как вы можете обнаружить, когда отображается окно браузера?
var hasFocus = true;
$(window).blur(function(){
hasFocus = false;
});
$(window).focus(function(){
hasFocus = true;
});
Однако это все равно будет равно ложным, когда пользователь, например, имеет окно браузера с открытым на втором экране во время работы на первый экран в другом приложении.
Это приложение в реальном времени, которое сообщает данные в реальном времени, и я не хочу, чтобы он длительный опрос, когда пользователь имеет приложение на вкладке или сведено к минимуму, но я хочу запустить опрос, когда окно отображается (даже если оно не фокусируется).
Есть ли способ проверить, открывается ли окно? (который работает в более старых браузерах?)
afaik, некоторые браузеры естественным образом замедляют или останавливают таймеры, когда окно/вкладка не находится в фокусе. – Joseph
http://stackoverflow.com/questions/1060008/is-there-a-way-to-detect-if-a-browser-window-is-not-currently-active – goat
Не совсем то, что я ищу, как Я не просто хочу, чтобы «фокус» я хотел, когда он действительно находится в поле зрения. –