The Range.insertNode() method inserts a node at the start of the Range.
The new node is inserted at the start boundary point of the Range. If the new node is to be added to a text Node, that Node is split at the insertion point, and the insertion occurs between the two text nodes.
If the new node is a document fragment, the children of the document fragment are inserted instead.
Syntax
range.insertNode(newNode);
Parameters
- newNode
- The
Nodeto insert at the start of therange.
Example
range = document.createRange();
newNode = document.createElement("p");
newNode.appendChild(document.createTextNode("New Node Inserted Here"));
range.selectNode(document.getElementsByTagName("div").item(0));
range.insertNode(newNode);
Specifications
| Specification | Status | Comment |
|---|---|---|
| DOM The definition of 'Range.insertNode()' in that specification. |
Living Standard | No change |
| Document Object Model (DOM) Level 2 Traversal and Range Specification The definition of 'Range.insertNode()' in that specification. |
Recommendation | Initial definition |
Browser compatibility
| Feature | Chrome | Edge | Firefox (Gecko) | Internet Explorer | Opera | Safari |
|---|---|---|---|---|---|---|
| Basic support | (Yes) | (Yes) | 1.0 (1.7 or earlier) 14.0 (14.0)[1] |
9.0 | 9.0 | (Yes) |
| Feature | Android | Edge | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
|---|---|---|---|---|---|---|
| Basic support | (Yes) | (Yes) | 1.0 (1.0) 14.0 (14.0)[1] |
9.0 | 9.0 | (Yes) |
[1] Prior to Gecko 14.0 (Firefox 14.0 / Thunderbird 14.0 / SeaMonkey 2.11), this method had no effect on collapsed ranges. Now it behaves as per the specification.
See also
Document Tags and Contributors
Tags:
Contributors to this page:
abbycar,
Sebastianz,
teoli,
fscholz,
kollishivagangadhar,
Khodaidad_Basharmand,
Sheppy,
Hansschmucker,
George3,
Feofan,
Gor1
Last updated by:
abbycar,