windows.update()
更新窗口的属性。使用此方法可移动、调整大小和(取消)聚焦窗口等。
这是一个异步函数,它返回一个 Promise
。
语法
let updating = browser.windows.update(
windowId, // integer
updateInfo // object
)
参数
windowId
-
integer
。要更新的窗口的 ID。 updateInfo
-
object
。包含要更新的属性的对象。drawAttention
可选-
boolean
。如果为true
,则会以一种吸引用户注意窗口的方式显示窗口,而不会更改聚焦窗口。该效果会持续到用户将焦点更改到窗口为止。如果窗口已获得焦点,则此选项无效。设置为false
可取消之前的drawAttention
请求。 focused
可选-
boolean
。如果为true
,则会将窗口置于最前面。如果为 false,则会将 z 顺序中的下一个窗口置于最前面。 height
可选-
integer
。以像素为单位调整窗口高度。此值对面板无效。 left
可选-
integer
。以像素为单位,从屏幕左侧边缘移动窗口的偏移量。此值对面板无效。 state
可选-
windows.WindowState
。窗口的新状态。minimized
、maximized
和fullscreen
状态不能与left
、top
、width
或height
组合使用。 titlePreface
可选-
string
。使用此方法可在浏览器窗口标题的开头添加字符串。根据底层操作系统,这可能无法在没有标题的浏览器窗口(例如 Firefox 中的 about:blank)上运行。 top
可选-
integer
。以像素为单位,从屏幕顶部边缘移动窗口的偏移量。此值对面板无效。 width
可选-
integer
。以像素为单位调整窗口宽度的值。此值对面板无效。
返回值
一个 Promise
,它将使用一个包含更新窗口详细信息的 windows.Window
对象来完成。如果发生任何错误,该 promise 将使用错误消息拒绝。
浏览器兼容性
BCD 表仅在浏览器中加载
示例
当用户单击浏览器操作的图标时,将窗口移动到左上角
function onUpdated(windowInfo) {
console.log(`Updated window: ${windowInfo.id}`);
}
function onError(error) {
console.log(`Error: ${error}`);
}
browser.browserAction.onClicked.addListener((tab) => {
let updating = browser.windows.update(tab.windowId, {
left: 0,
top: 0,
});
updating.then(onUpdated, onError);
});
示例扩展
注意:此 API 基于 Chromium 的 chrome.windows
API。此文档源自 Chromium 代码中的 windows.json
。