Element.prepend()
The Element.prepend() method inserts a set of Node objects or DOMString objects before the first child of the Element. DOMString objects are inserted as equivalent Text nodes.
Syntax
prepend(...nodesOrDOMStrings);
Parameters
Return value
undefined.
Exceptions
-
HierarchyRequestErrorDOMException -
Thrown when the node cannot be inserted at the specified point in the hierarchy.
Examples
Prepending an element
let div = document.createElement("div"); let p = document.createElement("p"); let span = document.createElement("span"); div.append(p); div.prepend(span); console.log(div.childNodes); // NodeList [ <span>, <p> ]
Prepending text
let div = document.createElement("div"); div.append("Some text"); div.prepend("Headline: "); console.log(div.textContent); // "Headline: Some text"
Appending an element and text
let div = document.createElement("div"); let p = document.createElement("p"); div.prepend("Some text", p); console.log(div.childNodes); // NodeList [ #text "Some text", <p> ]
The prepend method is unscopable
The prepend() method is not scoped into the with statement. See Symbol.unscopables for more information.
let div = document.createElement("div"); with(div) { prepend("foo"); } // ReferenceError: prepend is not defined
Specifications
| Specification |
|---|
| DOM Standard (DOM) # ref-for-dom-parentnode-prepend① |
Browser compatibility
| Desktop | Mobile | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | WebView Android | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | |
prepend |
54 |
17 |
49 |
No |
41 |
10 |
54 |
54 |
49 |
41 |
10 |
6.0 |
See also
Element.append()Node.appendChild()Node.insertBefore()Element.before()Element.insertAdjacentElement()NodeList
© 2005–2021 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/Element/prepend