webNavigation.getFrame()
检索有关特定框架的信息。框架可以是标签页中的顶级框架,也可以是嵌套的 <iframe>,它由标签页 ID 和框架 ID 唯一标识。
这是一个异步函数,返回一个 Promise。
语法
js
let gettingFrame = browser.webNavigation.getFrame(
details // object
)
参数
details-
object。有关要检索信息的框架的信息。tabId-
integer。框架所在的标签页 ID。 processId可选 已弃用-
integer。此值在现代浏览器中未设置。当设置时,它代表运行此选项卡渲染器的进程ID。 frameId-
integer。给定标签页中框架的 ID。
返回值
一个 Promise,它将使用包含以下属性的对象来完成
errorOccurred-
boolean。如果此框架中的最后一次导航被错误中断,则为 true,即onErrorOccurred事件被触发。 url-
string。与此框架当前关联的 URL,如果frameId标识的框架曾经存在于tabId标识的标签页中。与给定frameId关联的 URL 并不意味着相应的框架仍然存在。 parentFrameId-
integer。此框架的父框架 ID。如果不存在父框架,则为 -1:即,如果此框架是标签页中的顶级浏览上下文。
如果标签页被丢弃,Promise 将解析为 null。如果找不到指定的标签页或框架 ID,或者发生其他错误,Promise 将以错误消息被拒绝。
示例
js
function onGot(frameInfo) {
console.log(frameInfo);
}
function onError(error) {
console.log(`Error: ${error}`);
}
let gettingFrame = browser.webNavigation.getFrame({
tabId: 19,
frameId: 1537,
});
// Edge specific - processId is required not optional, must be integer not null
// let gettingFrame = browser.webNavigation.getFrame({ tabId: 19, processId: 0, frameId: 1537 });
gettingFrame.then(onGot, onError);
浏览器兼容性
加载中…
注意: 此 API 基于 Chromium 的 chrome.webNavigation API。此文档来源于 Chromium 代码中的 web_navigation.json。