This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
The insertItemBefore() method of the SVGPointList interface inserts a DOMPoint before another item in the list.
insertItemBefore(obj, index)
objA DOMPoint object containing the coordinates of the point to be inserted.
indexThe index of the item the object should be inserted before. If the index passed in is greater than the length of the list, then index will be set to the list length and the item inserted before the last item in the list.
The DOMPoint object that was inserted.
NoModificationAllowedError DOMException
Thrown if the list is read-only.
The following example shows an SVG which contains a <polyline> with five coordinate pairs. A new DOMPoint is created, and inserted before the point at index 2.
<svg id="svg" viewBox="-10 -10 120 120" xmlns="http://www.w3.org/2000/svg">
<polyline
id="example"
stroke="black"
fill="none"
points="50,0 21,90 98,35 2,35 79,90" />
</svg>
const example = document.getElementById("example");
const point = document.getElementById("svg").createSVGPoint();
point.y = 10;
point.x = 10;
console.log(example.points.insertItemBefore(point, 2));
| Desktop | Mobile | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | WebView Android | WebView on iOS | |
insertItemBefore |
1 | 12 | 1.5 | ≤12.1 | 3 | 18 | 4 | ≤12.1 | 1 | 1.0 | 3 | 1 |
© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/SVGPointList/insertItemBefore