如何在Chrome扩展中最小化/最大化事件时检测窗口? [英] How to Detect Window On Minimize/Maximize Event in Chrome Extension?

查看:607
本文介绍了如何在Chrome扩展中最小化/最大化事件时检测窗口?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

当浏览器窗口使用Google Chrome扩展程序最小化/最大化时,我需要捕捉事件。如何做到这一点?

I need to catch the event when a browser window is minimized/maximized using Google Chrome Extensions. How to do this ?

推荐答案

要知道给定窗口是最小化还是最大化,使用 chrome.windows.get

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);
});

没有任何事件告诉你一个窗口被最小化/最大化。不过,您可以通过 chrome获得窗口焦点更改的通知。 windows.onFocusChanged 。此事件提供了一个ID,可以在我回答顶部显示的方法中使用。请注意,它可能偶尔会以-1( chrome.windows.WINDOW_ID_NONE )。在这种情况下,只需假定窗口已最小化。

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扩展中最小化/最大化事件时检测窗口?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆