Вы можете прикрепить focus
и blur
обработчиков событий на window
объекта для отслеживания, если окно получает или теряет фокус (см http://jsfiddle.net/whQFz/ для простейшего примера). window
применяется к текущему контексту браузера (так что это может быть окно, вкладка, кадр и т. Д.).
Примечание:focus
события будет срабатывать каждый раз, когда окно получает фокус и blur
события будет срабатывать каждый раз, когда оно теряет фокус. Примером чего-то, что отвлекает внимание от окна, является окно alert
. Если вы попытаетесь оповестить об ошибке в обработчике событий onfocus
, вы получите бесконечный цикл предупреждений!
// Set global counter variable to verify event instances
var nCounter = 0;
// Set up event handler to produce text for the window focus event
window.addEventListener("focus", function(event)
{
document.getElementById('message').innerHTML = "window has focus " + nIndex;
nCounter = nCounter + 1;
}, false);
// Example of the blur event as opposed to focus
// window.addEventListener("blur", function(event) {
// document.getElementById('message').innerHTML = "window lost focus"; },
// false);
Как это с совместимостью браузеров? –