语法
js
let removing = browser.windows.remove(
windowId // integer
)
参数
windowId-
integer。要关闭的窗口的 ID。
返回值
一个 Promise,当窗口关闭时,它将以无参数的形式 fulfilled。如果发生任何错误,promise 将被带有错误消息的 rejected。
示例
当用户点击浏览器操作的图标时,关闭图标被点击的窗口。
js
function onRemoved() {
console.log(`Removed window`);
}
function onError(error) {
console.error(`Error:`, error);
}
browser.browserAction.onClicked.addListener((tab) => {
let removing = browser.windows.remove(tab.windowId);
removing.then(onRemoved, onError);
});
当用户点击页面上的按钮时,关闭当前窗口,例如弹出窗口。
js
// in a script loaded by the page in the window
document.querySelector("#close").addEventListener(async ({ button }) => {
try {
if (button) return; // not a left click
const windowId = (await browser.windows.getCurrent()).id;
await browser.windows.remove(windowId);
// this point will never be reached, since the window is gone
} catch (error) {
console.error("Closing failed:", error);
}
});
在 Firefox 中,可以通过 .allowScriptsToClose 窗口创建属性和 window.close() 来实现相同的功能。
扩展程序示例
浏览器兼容性
加载中…
注意: 此 API 基于 Chromium 的 chrome.windows API。此文档源自 Chromium 代码中的 windows.json。