Spec-Zone.ru › Web APIs

PerformanceNavigationTiming: свойство unloadEventStart

Базовая реализация Широко доступна

Эта функция хорошо зарекомендовала себя и работает на многих устройствах и версиях браузеров. Она доступна в браузерах с октября 2021 года.

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

Чтение-только свойство unloadEventStart возвращает DOMHighResTimeStamp, представляющий время непосредственно перед запуском обработчика события unload текущего документа.

Значение

Свойство unloadEventStart может иметь следующие значения:

  • DOMHighResTimeStamp представляющий время непосредственно перед запуском обработчика события unload текущего документа.
  • 0 если нет предыдущего документа.
  • 0 если предыдущая страница была на другом источнике.

Примеры

Измерение времени обработки обработчика события unload

Свойство unloadEventStart может использоваться для измерения времени обработки обработчика события unload.

Это полезно для измерения времени работы длительных обработчиков события unload.

window.addEventListener("unload", (event) => {
  // Some long running code
});

Пример использования PerformanceObserver, который оповещает о новых записях производительности navigation, как только они записываются в временной шкале производительности браузера. Используйте опцию buffered для доступа к записям, имевшимся до создания наблюдателя.

const observer = new PerformanceObserver((list) => {
  list.getEntries().forEach((entry) => {
    const unloadEventTime = entry.unloadEventEnd - entry.unloadEventStart;
    if (unloadEventTime > 0) {
      console.log(
        `${entry.name}: unload event handler time: ${unloadEventTime}ms`,
      );
    }
  });
});

observer.observe({ type: "navigation", buffered: true });

Пример использования Performance.getEntriesByType(), который показывает только записи производительности navigation , присутствующие в временной шкале производительности браузера в момент вызова этого метода:

const entries = performance.getEntriesByType("navigation");
entries.forEach((entry) => {
  const loadEventTime = entry.unloadEventEnd - entry.unloadEventStart;
  if (unloadEventTime > 0) {
    console.log(`${entry.name}:
      load event handler time: ${unloadEventTime}ms`);
  }
});

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

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

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

Рабочий стол Мобильные устройства
Chrome Edge Firefox Opera Safari Chrome Android Firefox для Android Opera Android Safari на iOS Samsung Internet WebView Android
unloadEventStart 57 12 58 44 15 57 58 43 15.1 7.0 57

См. также

  • unload событие

© 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/unloadEventStart

Spec-Zone.ru

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