CharacterData: after() 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 after() method of the CharacterData interface
inserts a set of Node objects or strings in the children list of the
object's parent, just after the object itself.
Strings are inserted as Text nodes; the string is being passed as argument to the Text() constructor.
Syntax
after(...nodes)
Parameters
Return value
None (undefined).
Exceptions
HierarchyRequestErrorDOMException-
Thrown when the new nodes cannot be inserted at the specified point in the hierarchy, that is if one of the following conditions is met:
- If the insertion of one of the added node would lead to a cycle, that is if one of them is an ancestor of this
CharacterDatanode. - If one of the added node is not a
DocumentFragment, aDocumentType, anElement, or aCharacterData. - If this
CharacterDatanode is actually aTextnode, and its parent is aDocument. - If the parent of this
CharacterDatanode is aDocumentand one of the nodes to insert is aDocumentFragmentwith more than oneElementchild, or that has aTextchild.
- If the insertion of one of the added node would lead to a cycle, that is if one of them is an ancestor of this
Examples
The after() method allows you to insert new nodes after a CharacterData node.
const h1TextNode = document.querySelector("h1").firstChild;
h1TextNode.after(" #h1");
h1TextNode.parentElement.childNodes;
// NodeList [#text "CharacterData.after()", #text " #h1"]
h1TextNode.data;
// "CharacterData.after()"
Note:
If you rather want to append text to the current node,
the appendData() method lets you append to the current node's data.
Specifications
| Specification |
|---|
| DOM> # ref-for-dom-childnode-after①> |
Browser compatibility
Loading…