Spec-Zone.ru › Web APIs

PerformanceNavigationTiming: свойство notRestoredReasons

Ограниченная доступность

Эта функция не относится к Baseline, так как она не работает во всех широко используемых браузерах.

  • Подробнее
  • Полная совместимость
  • Отправить отзыв

Экспериментальная: Это экспериментальная технология
Перед использованием в продакшене внимательно ознакомьтесь с таблицей совместимости браузеров.

Только для чтения свойство notRestoredReasons интерфейса PerformanceNavigationTiming возвращает объект NotRestoredReasons, предоставляющий данные о причинах блокирования текущего документа от использования кэша вперёд/назад (bfcache) при навигации.

Значение

Когда связанный объект PerformanceNavigationTiming представляет навигацию по истории, notRestoredReasons возвращает объект NotRestoredReasons.

Когда объект PerformanceNavigationTiming не представляет навигацию по истории, notRestoredReasons вернет null. Это полезно для определения, не относится ли bfcache к конкретной навигации (в отличие от ситуации, когда notRestoredReasons не поддерживается, в этом случае он вернет undefined).

Примечание: notRestoredReasons может вернуть null, несмотря на то, что тип навигации указан как навигация вперёд/назад. Эти случаи включают дублирование навигации вперёд/назад в новой вкладке и восстановление вкладки навигации вперёд/назад после перезапуска браузера. В таких случаях некоторые браузеры копируют тип навигации из исходной вкладки, но поскольку это фактически не навигация вперёд/назад, notRestoredReasons возвращает null.

Примеры

PerformanceNavigationTiming данные можно получить из временной шкалы производительности, используя Performance.getEntriesByType() или PerformanceObserver.

Например, вы можете вызвать следующую функцию, чтобы вернуть все объекты PerformanceNavigationTiming, присутствующие в настоящее время в временной шкале производительности, и вывести их notRestoredReasons:

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);
  }
}

Свойство PerformanceNavigationTiming.notRestoredReasons возвращает объект со следующей структурой, который предоставляет причины блокирования текущего документа от использования bfcache. В этом примере верхний фрейм не имеет вложенных дочерних <iframe>:

{
  children: [],
  id: null,
  name: null,
  reasons: [
    { reason: "unload-listener" }
  ],
  src: "",
  url: "example.com",
}

Спецификации

Спецификация
Navigation Timing Level 2
# dom-performancenavigationtiming-notrestoredreasons

Совместимость браузеров

Рабочий стол Мобильные устройства
Chrome Edge Firefox Opera Safari Chrome Android Firefox для Android Opera Android Safari на IOS Samsung Internet WebView Android
notRestoredReasons 125 125 Нет 111 Нет 125 Нет 83 Нет 27.0 125

См. также

  • Мониторинг причин блокирования bfcache
  • PerformanceResourceTiming

© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/PerformanceNavigationTiming/notRestoredReasons

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API