Событие, когда веб-страница фокусируется

У Google Reader есть хорошая функция: при переключении на веб-страницу с другой веб-страницы (при задании фокуса страницы) она покажет вам обновления, которые были накоплены, когда страница была не сфокусирована.
Быстрый вопроС# 1. Как они это делают?

Я полагаю, что они могут быть привязаны к событиям перемещения мыши + событиям клавиатуры, так как я не знаю ни одного события из коробки, которое дает вам эту возможность.

Для Google это кошмар (фокус, вкладка, веб-страница, пользователь).

Быстрый вопроС# 2: Есть ли какой-то пакет, который дает мне эту способность?

Я помещаю тэг jQuery в качестве маяка для всех веб-разработчиков ninjas, но я не очень-то забочусь о структуре (до тех пор, пока его Javascript)

Ответы

Ответ 1

Или используйте:

$(window).focus(function() {
   console.log('welcome (back)');
});

$(window).blur(function() {
   console.log('bye bye');
});

Ответ 2

Используйте focusin (фокус) и focusout (размытие) объекта document:

$(document).bind('focus', function() {
   console.log('welcome (back)');
}).bind('blur', function() {
   console.log('bye bye');
});

Ответ 3

Я тестировал в FF и document.onfocus вызывается, когда я переключаюсь на это окно.