问题描述
当浏览器窗口使用Google Chrome扩展程序最小化/最大化时,我需要捕捉事件。如何做到这一点?
I need to catch the event when a browser window is minimized/maximized using Google Chrome Extensions. How to do this ?
推荐答案
要知道给定窗口是最小化还是最大化,使用:
To know whether a given window is minimized / maximized, just use chrome.windows.get
:
// assume windowId is given
chrome.windows.get(windowId, function(chromeWindow) {
// "normal", "minimized", "maximized" or "fullscreen"
alert('Window is ' + chromeWindow.state);
});
没有任何事件告诉你一个窗口被最小化/最大化。不过,您可以通过。此事件提供了一个ID,可以在我回答顶部显示的方法中使用。请注意,它可能偶尔会以-1()。在这种情况下,只需假定窗口已最小化。
There's no event that tells you that a window is minimized / maximized. However, you can get notified of window focus changes via chrome.windows.onFocusChanged
. This event provides an ID which can be used in the method shown at the top of my answer. Note that it may occasionally be called with "-1" (chrome.windows.WINDOW_ID_NONE
). In this case, just assume that the window is minimized.
chrome.windows.onFocusChanged.addListener(function(windowId) {
if (windowId === -1) {
// Assume minimized
} else {
chrome.windows.get(windowId, function(chromeWindow) {
if (chromeWindow.state === "minimized") {
// Window is minimized
} else {
// Window is not minimized (maximized, fullscreen or normal)
}
});
}
});
这篇关于如何在Chrome扩展中最小化/最大化事件时检测窗口?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!