LayoutShiftAttribution
Ограниченная доступность
Эта функция не относится к Baseline, так как она не работает во всех широко используемых браузерах.
Экспериментально: Это экспериментальная технология
Перед использованием в продакшене внимательно изучите таблицу совместимости с браузерами.
Интерфейс LayoutShiftAttribution предоставляет отладочную информацию об элементах, которые сместились.
Экземпляры LayoutShiftAttribution возвращаются в массиве при вызове LayoutShift.sources.
Свойства экземпляра
-
LayoutShiftAttribution.nodeТолько для чтения Экспериментально -
Возвращает элемент, который сместился (null, если он был удален).
-
LayoutShiftAttribution.previousRectТолько для чтения Экспериментально -
Возвращает объект
DOMRectReadOnly, представляющий положение элемента до смещения. -
LayoutShiftAttribution.currentRectТолько для чтения Экспериментально -
Возвращает объект
DOMRectReadOnly, представляющий положение элемента после смещения.
Методы экземпляра
-
LayoutShiftAttribution.toJSON()Экспериментально -
Возвращает JSON-представление объекта
LayoutShiftAttribution.
Примеры
Следующий пример находит элемент с наибольшим значением смещения макета и возвращает элемент в этом элементе с наибольшим размером перед смещением (previousRect). Более подробная информация об этом доступна на странице Отладка Web Vitals на месте.
function getCLSDebugTarget(entries) {
const largestEntry = entries.reduce((a, b) =>
a && a.value > b.value ? a : b,
);
if (largestEntry?.sources?.length) {
const largestSource = largestEntry.sources.reduce((a, b) => {
const area = (el) => el.previousRect.width * el.previousRect.height;
return a.node && area(a) > area(b) ? a : b;
});
if (largestSource) {
return largestSource.node;
}
}
}
Спецификации
Совместимость с браузерами
| Рабочий стол | Мобильные устройства | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari на iOS | Samsung Internet | WebView Android | |
LayoutShiftAttribution |
84 | 84 | Нет | 70 | Нет | 84 | Нет | 60 | Нет | 14.0 | 84 |
currentRect |
84 | 84 | Нет | 70 | Нет | 84 | Нет | 60 | Нет | 14.0 | 84 |
node |
84 | 84 | Нет | 70 | Нет | 84 | Нет | 60 | Нет | 14.0 | 84 |
previousRect |
84 | 84 | Нет | 70 | Нет | 84 | Нет | 60 | Нет | 14.0 | 84 |
toJSON |
84 | 84 | Нет | 70 | Нет | 84 | Нет | 60 | Нет | 14.0 | 84 |
См. также
© 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/LayoutShiftAttribution