Element: before() method
Baseline
Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since April 2018.
The before() method of the Element interface inserts a set of Node objects or strings in the children list of this Element's parent, just before this Element. Strings are inserted as equivalent Text nodes. Nothing happens if parentNode is null.
Syntax
js
before(param1)
before(param1, param2)
before(param1, param2, /* …, */ paramN)
Parameters
param1, …,paramN-
A set of
Nodeobjects or strings to insert.
Return value
None (undefined).
Exceptions
HierarchyRequestErrorDOMException-
Thrown when the node cannot be inserted at the specified point in the hierarchy.
Examples
>Inserting an element
js
const container = document.createElement("div");
const p = document.createElement("p");
container.appendChild(p);
const span = document.createElement("span");
p.before(span);
console.log(container.outerHTML);
// "<div><span></span><p></p></div>"
Inserting text
js
const container = document.createElement("div");
const p = document.createElement("p");
container.appendChild(p);
p.before("Text");
console.log(container.outerHTML);
// "<div>Text<p></p></div>"
Inserting an element and text
js
const container = document.createElement("div");
const p = document.createElement("p");
container.appendChild(p);
const span = document.createElement("span");
p.before(span, "Text");
console.log(container.outerHTML);
// "<div><span></span>Text<p></p></div>"
Specifications
| Specification |
|---|
| DOM> # ref-for-dom-childnode-before①> |