LargestContentfulPaint: свойство renderTime
Ограниченная доступность
Эта функция не является базовой, так как она не работает во всех самых распространённых браузерах.
Чтение-только свойство renderTime интерфейса LargestContentfulPaint представляет время, когда элемент был отображён на экране.
Значение
Свойство renderTime может иметь следующие значения:
- Значение
timestamp, представляющее время в миллисекундах, когда элемент был отображён на экране. -
0если ресурс является запросом с другого домена и заголовок ответа HTTPTiming-Allow-Originне используется.
Примеры
Ведение журнала времени отрисовки Largest Contentful Paint
Этот пример использует PerformanceObserver, оповещающий о новых записях производительности largest-contentful-paint по мере их записи в временной шкале производительности браузера. Используется опция buffered для доступа к записям, созданным до создания наблюдателя.
const observer = new PerformanceObserver((list) => {
const entries = list.getEntries();
const lastEntry = entries[entries.length - 1]; // Use the latest LCP candidate
console.log(lastEntry.renderTime);
});
observer.observe({ type: "largest-contentful-paint", buffered: true });
Время отрисовки изображения с другого домена
По соображениям безопасности, значение свойства renderTime изначально 0 если ресурс является запросом с другого домена. Вместо этого следует использовать свойство loadTime в качестве резервного варианта.
Браузеры могут теперь отображать немного укрупнённое время отрисовки в таких ситуациях. Проверьте поддержку браузера.
Чтобы отобразить более точную информацию о времени отрисовки с другого домена, необходимо установить заголовок ответа HTTP Timing-Allow-Origin.
Например, чтобы разрешить https://developer.mozilla.org видеть точное значение renderTime, ресурс с другого домена должен отправлять:
Timing-Allow-Origin: https://developer.mozilla.org
В качестве альтернативы, вы можете использовать startTime, которое возвращает значение renderTime записи, если оно не 0, в противном случае — значение loadTime этой записи. Однако рекомендуется устанавливать заголовок Timing-Allow-Origin для повышения точности метрик.
Если вы используете startTime, вы можете выявлять неточности, проверяя, использовался ли renderTime:
const isAccurateLCP = entry.renderTime ? true : false;
Спецификации
Совместимость браузеров
| Десктоп | Мобильные | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari в iOS | Samsung Internet | WebView Android | |
renderTime |
77 | 79 | 122 | 64 | Нет | 77 | 122 | 55 | Нет | 12.0 | 77 |
© 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/LargestContentfulPaint/renderTime