PerformanceNavigationTiming: свойство domContentLoadedEventStart
Базовая Широко поддерживается
Эта функция хорошо отработана и работает на многих устройствах и версиях браузеров. Она доступна во всех браузерах с октября 2021 года.
Чтение-только свойство domContentLoadedEventStart возвращает DOMHighResTimeStamp, представляющий время непосредственно перед началом обработки обработчика события DOMContentLoaded текущего документа.
Обычно фреймворки и библиотеки ожидают события DOMContentLoaded перед запуском собственного кода. Мы можем использовать свойства domContentLoadedEventStart и domContentLoadedEventEnd для расчёта времени выполнения этого кода.
Значение
DOMHighResTimeStamp представляющий время непосредственно перед началом обработки обработчика события DOMContentLoaded текущего документа.
Примеры
Измерение времени обработки обработчика события DOMContentLoaded
Свойство domContentLoadedEventStart может быть использовано для измерения времени обработки обработчика события 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`,
);
});
Спецификации
Совместимость браузеров
| Рабочие столы | Мобильные устройства | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari на iOS | Samsung Internet | WebView Android | |
domContentLoadedEventStart |
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/domContentLoadedEventStart