PerformanceNavigationTiming: Eigenschaft notRestoredReasons
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Experimentell: Dies ist eine experimentelle Technologie
Überprüfen Sie die Browser-Kompatibilitätstabelle sorgfältig vor der Verwendung auf produktiven Webseiten.
Die schreibgeschützte Eigenschaft notRestoredReasons
der Schnittstelle PerformanceNavigationTiming
gibt ein NotRestoredReasons
-Objekt zurück, das Berichtsdatensätze zu den Gründen liefert, warum das aktuelle Dokument bei einer Navigation daran gehindert wurde, den Back/Forward Cache (bfcache) zu verwenden.
Wert
Wenn das assoziierte PerformanceNavigationTiming
-Objekt eine Verlauf-Navigation darstellt, gibt notRestoredReasons
ein NotRestoredReasons
-Objekt zurück.
Wenn das PerformanceNavigationTiming
-Objekt keine Verlauf-Navigation darstellt, wird notRestoredReasons
null
zurückgeben. Dies ist nützlich, um festzustellen, ob bfcache für eine bestimmte Navigation nicht relevant ist (im Gegensatz zu notRestoredReasons
, die nicht unterstützt werden würden, in diesem Fall würde undefined
zurückgegeben).
Note:
notRestoredReasons
kannnull
zurückgeben, obwohl der Navigationstyp als Vorwärts/Rückwärts-Navigation gemeldet wird. Diese Umstände umfassen das Duplizieren einer Vorwärts/Rückwärts-Navigation in einem neuen Tab und das Wiederherstellen eines Vorwärts/Rückwärts-Navigations-Tabs nach einem Browser-Neustart. In solchen Fällen kopieren einige Browser den Navigationstyp aus dem Original-Tab, aber da dies tatsächlich keine Vorwärts/Rückwärts-Navigationsvorgänge sind, gibtnotRestoredReasons
null
zurück.
Beispiele
PerformanceNavigationTiming
-Daten können mithilfe der Performance.getEntriesByType()
oder des PerformanceObserver
aus der Performance-Zeitleiste abgerufen werden.
Zum Beispiel könnte die folgende Funktion aufgerufen werden, um alle PerformanceNavigationTiming
-Objekte, die derzeit in der Performance-Zeitleiste vorhanden sind, zurückzugeben und deren notRestoredReasons
zu protokollieren:
function returnNRR() {
const navEntries = performance.getEntriesByType("navigation");
for (let i = 0; i < navEntries.length; i++) {
console.log(`Navigation entry ${i}`);
let navEntry = navEntries[i];
console.log(navEntry.notRestoredReasons);
}
}
Die Eigenschaft PerformanceNavigationTiming.notRestoredReasons
gibt ein Objekt mit der folgenden Struktur zurück, das die Gründe angibt, warum das aktuelle Dokument daran gehindert wurde, den bfcache zu verwenden. In diesem Beispiel hat der oberste Rahmen keine eingebetteten <iframe>
-Kinder:
{
children: [],
id: null,
name: null,
reasons: [
{ reason: "unload-listener" }
],
src: "",
url: "example.com",
}
Spezifikationen
Specification |
---|
Navigation Timing Level 2 # dom-performancenavigationtiming-notrestoredreasons |
Browser-Kompatibilität
BCD tables only load in the browser