webNavigation.getAllFrames()
Bei einer gegebenen Tab-ID werden Informationen über alle enthaltenen Frames abgerufen.
Dies ist eine asynchrone Funktion, die ein Promise
zurückgibt.
Syntax
let gettingFrames = browser.webNavigation.getAllFrames(
details // object
)
Parameter
Rückgabewert
Ein Promise
, das mit einem Array von Objekten erfüllt wird, von denen jedes die folgenden Eigenschaften hat:
errorOccurred
-
boolean
. Wahr, wenn die letzte Navigation in diesem Frame durch einen Fehler unterbrochen wurde, d.h. dasonErrorOccurred
-Ereignis ausgelöst wurde. processId
Optional Veraltet-
integer
. Dieser Wert wird in modernen Browsern nicht gesetzt. Wenn er gesetzt war, repräsentierte er die ID des Prozesses, der den Renderer für diesen Tab ausführte. frameId
-
integer
. Die ID des Frames. Wenn dies der Hauptframe ist, dann istframeId
null. parentFrameId
-
integer
. Die ID des übergeordneten Frames. Dies ist -1, wenn es keinen übergeordneten Frame gibt: das bedeutet, wenn dieser Frame der oberste Browsing-Kontext im Tab ist. url
-
string
. Die URL, die derzeit diesem Frame zugeordnet ist.
Falls der Tab verworfen wird, wird das Promise stattdessen mit einem null
Wert aufgelöst. Wenn der angegebene Tab nicht gefunden werden konnte oder ein anderer Fehler auftritt, wird das Promise mit einer Fehlermeldung abgelehnt.
Browser-Kompatibilität
Beispiele
Dieser Code protokolliert die URLs aller Frames im aktiven Tab, wenn der Benutzer auf eine Browser-Aktion klickt:
function logFrameInfo(framesInfo) {
for (const frameInfo of framesInfo) {
console.log(frameInfo);
}
}
function onError(error) {
console.error(`Error: ${error}`);
}
function logAllFrames(tabs) {
browser.webNavigation
.getAllFrames({
tabId: tabs[0].id,
})
.then(logFrameInfo, onError);
}
browser.browserAction.onClicked.addListener(() => {
browser.tabs
.query({
currentWindow: true,
active: true,
})
.then(logAllFrames, onError);
});
Hinweis:
Diese API basiert auf Chromium's chrome.webNavigation
API. Diese Dokumentation ist abgeleitet von web_navigation.json
im Chromium-Code.