tabs.captureVisibleTab()
创建一个数据 URL,该 URL 对指定窗口中活动标签区域的图像进行编码。您必须拥有 <all_urls>
或 activeTab
权限。
注意:在 Firefox 125 及更早版本中,此方法仅适用于 <all_urls>
权限。
除了扩展可以正常访问的网站之外,此方法还允许扩展捕获其他受限的敏感网站,包括浏览器 UI 页面和其他扩展的页面。这些敏感网站只能使用 activeTab
权限捕获。Chrome 还允许在扩展被授予文件访问权限时捕获文件 URL。
这是一个异步函数,返回一个 Promise
。
语法
js
let capturing = browser.tabs.captureVisibleTab(
windowId, // optional integer
options // optional extensionTypes.ImageDetails
)
参数
返回值
一个 Promise
,它被一个编码捕获图像的数据 URL 填充。它可以被分配给 HTML 图像元素的 'src' 属性以进行显示。如果发生任何错误,则该 promise 将被错误消息拒绝。
示例
使用默认图像设置捕获当前窗口中活动标签的图像
js
function onCaptured(imageUri) {
console.log(imageUri);
}
function onError(error) {
console.log(`Error: ${error}`);
}
browser.browserAction.onClicked.addListener(() => {
let capturing = browser.tabs.captureVisibleTab();
capturing.then(onCaptured, onError);
});
浏览器兼容性
BCD 表仅在浏览器中加载
注意:此 API 基于 Chromium 的 chrome.tabs
API。此文档来自 Chromium 代码中的 tabs.json
。