документ.hasFocus () для chrome
Кто-нибудь знает, что использовать вместо hasFocus() для Chrome? Я хочу знать, когда моя вкладка Chrome имеет фокус или нет, поэтому я могу мигать предупреждающим сообщением в заголовке.
Ура
3 ответа:
Вы можете прослушивать события onfocus/onblur и таким образом отслеживать состояние страницы.
<!DOCTYPE html> <html> <head> </head> <body> <div id="output"> </div> <script> var has_focus = true; function print(str) { var out = document.getElementById('output') out.innerText = out.innerText + "\n" + str; }; window.onfocus = function() { print('focus'); has_focus = true; }; window.onblur = function() { print('blur'); has_focus = false; }; </script> </body> </html>
API видимости страницы должен сделать трюк: https://developer.mozilla.org/en-US/docs/DOM/Using_the_Page_Visibility_API
Документ.скрытые
Возвращает true, если страница находится в состоянии, рассматриваемом как быть скрытым для пользователя и ложным в противном случае.
Конечно, поскольку это новый API, вам нужно будет использовать различные префиксы браузера:
if (typeof document.hidden !== "undefined") { // Opera 12.10 and Firefox 18 and later support hidden = "hidden"; } else if (typeof document.mozHidden !== "undefined") { hidden = "mozHidden"; } else if (typeof document.msHidden !== "undefined") { hidden = "msHidden"; } else if (typeof document.webkitHidden !== "undefined") { hidden = "webkitHidden"; } var isHidden = document[hidden]; // or even var isFocused = !isHidden;