Упакованное приложение Chrome onblur прослушиватель?

Существуют ли какие-либо прослушиватели событий для упакованного приложения Chrome, чтобы определить, потеряло ли приложение фокус? Я пытаюсь создать игру, но не могу поставить ее на паузу, когда меняю фокус.

Я пробовал несколько разных вещей, таких как следующие, но, похоже, ни одна из них не работает.

document.onblur = pause;
document.addEventListener('blur', pause, false);

canvas.onblur = pause;
canvas.addEventListener('blur', pause, false);

window.onblur = pause;
window.addEventListener('blur', pause, false);

chrome.app.window.onblur = pause;
chrome.app.window.onBlur = pause;
chrome.app.window.onblurred = pause;
chrome.app.window.onBlurred = pause;
chrome.app.window.addEventListener('blur', pause, false);

chrome.app.window.current().onblur = pause;
chrome.app.window.current().onBlur = pause;
chrome.app.window.current().onblurred = pause;
chrome.app.window.current().onBlurred = pause;
chrome.app.window.current().addEventListener('blur', pause, false);

Есть идеи? Я могу буквально скопировать весь этот список в свой код, и ни один из них не сработает на паузу.

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


person Tgwizman    schedule 16.08.2013    source источник


Ответы (1)


AppWindow – это API, специфичный для Chrome, который предоставляет только методы, определенные в документации. Если вы хотите использовать стандартные события из обычного объекта окна html, вы должны сначала получить его, используя свойство contentWindow для AppWindow. Пример:

chrome.app.window.current().contentWindow.onblur = function(){console.log("blur")};
person jusio    schedule 09.09.2013
comment
chrome.app.window устарел. - person Ipsita; 11.12.2020