PerformanceNavigationTiming: свойство domContentLoadedEventEnd
Базовая линия Широко доступно
Эта функция хорошо зарекомендовала себя и работает на многих устройствах и версиях браузеров. Она доступна во всех браузерах с октября 2021 года.
Чтение-только свойство domContentLoadedEventEnd возвращает DOMHighResTimeStamp, представляющий время сразу после завершения обработчика события DOMContentLoaded текущего документа.
Как правило, фреймворки и библиотеки ожидают события DOMContentLoaded перед запуском своего кода. Мы можем использовать свойства domContentLoadedEventEnd и domContentLoadedEventStart для расчета времени выполнения этого кода.
Значение
DOMHighResTimeStamp представляющий время сразу после завершения обработчика события DOMContentLoaded текущего документа.
Примеры
Измерение времени работы обработчика события DOMContentLoaded
Свойство domContentLoadedEventEnd можно использовать для измерения времени, необходимого для обработки обработчика события DOMContentLoaded.
Пример с использованием PerformanceObserver, который уведомляет о новых записях производительности navigation по мере их записи в временной шкале производительности браузера. Используйте опцию buffered для доступа к записям, существовавшим до создания наблюдателя.
const observer = new PerformanceObserver((list) => {
list.getEntries().forEach((entry) => {
const domContentLoadedTime =
entry.domContentLoadedEventEnd - entry.domContentLoadedEventStart;
console.log(
`${entry.name}: DOMContentLoaded processing time: ${domContentLoadedTime}ms`,
);
});
});
observer.observe({ type: "navigation", buffered: true });
Пример с использованием Performance.getEntriesByType(), который показывает только записи производительности navigation , присутствующие в временной шкале производительности браузера в момент вызова этого метода:
const entries = performance.getEntriesByType("navigation");
entries.forEach((entry) => {
const domContentLoadedTime =
entry.domContentLoadedEventEnd - entry.domContentLoadedEventStart;
console.log(
`${entry.name}: DOMContentLoaded processing time: ${domContentLoadedTime}ms`,
);
});
Спецификации
| Спецификация |
|---|
| Навигационное время уровня 2 # dom-performancenavigationtiming-domcontentloadedeventend |
Совместимость с браузерами
| Рабочий стол | Мобильный | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox for Android | Opera Android | Safari на IOS | Samsung Internet | WebView Android | |
domContentLoadedEventEnd |
57 | 12 | 58 | 44 | 15 | 57 | 58 | 43 | 15.1 | 7.0 | 57 |
См. также
© 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/domContentLoadedEventEnd