SVGTransformList: метод insertItemBefore()
Базовая Широко поддерживается
Эта функция хорошо отработана и работает на многих устройствах и версиях браузеров. Она доступна в браузерах с января 2020 года.
Метод insertItemBefore() интерфейса SVGTransformList вставляет новый элемент в список по указанному положению.
Первый элемент индексируется с 0. Вставляемый элемент — это сам элемент, а не его копия.
-
Если
newItemуже находится в списке, он удаляется из предыдущего списка перед вставкой в этот. -
Если элемент уже находится в этом списке, обратите внимание, что
indexэлемента для вставки перед удалением элемента. -
Если
indexравно0, новый элемент вставляется в начало списка. -
Если
indexбольше или равноnumberOfItems, новый элемент добавляется в конец списка.
Синтаксис
SVGTransformList.insertItemBefore(newItem, index)
Параметры
newItem-
Элемент
SVGTransform, который вставляется в список. index-
Целое число; индекс, куда должен быть вставлен новый элемент (беззнаковое целое).
Возвращаемое значение
Объект SVGTransform; вставленный элемент из списка.
Исключения
-
NoModificationAllowedErrorDOMException -
Выбрасывается, если
SVGTransformListсоответствует только для чтения атрибуту или когда сам объект только для чтения.
Примеры
Вставка преобразования в список
<svg width="200" height="200" id="mySvg"> <rect width="100" height="100" fill="blue" /> </svg>
const svgElement = document.querySelector("svg");
const rectElement = svgElement.querySelector("rect");
// Access the transform list of the <rect> element
const transformList = rectElement.transform.baseVal;
// Create a new translate transformation
const translateTransform = svgElement.createSVGTransform();
translateTransform.setTranslate(50, 50);
// Insert the translation transformation at the beginning of the list
transformList.insertItemBefore(translateTransform, 0);
// The transformation list length and type
console.log(`Number of transformations: ${transformList.length}`); // Output: 1
console.log(`Transformation Type: ${transformList.getItem(0).type}`); // Output: 2 (e.g. SVG_TRANSFORM_TRANSLATE)
Спецификации
Совместимость с браузерами
| Рабочие столы | Мобильные | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari на IOS | Samsung Internet | WebView Android | |
insertItemBefore |
1 | 12 | 1.5 | ≤12.1 | 3 | 18 | 4 | ≤12.1 | 1 | 1.0 | 3 |
См. также
© 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/SVGTransformList/insertItemBefore