DocumentType: 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.
TheDocumentType.before() method inserts a set ofNode objects or strings in the children list of theDocumentType's parent, just before theDocumentType.Strings are inserted as equivalentText nodes.
In this article
Syntax
js
before(param1)before(param1, param2)before(param1, param2, /* …, */ paramN)Parameters
param1, …,paramNA set of
Nodeobjects or strings to insert.
Return value
None (undefined).
Exceptions
HierarchyRequestErrorDOMExceptionThrown when the node cannot be inserted at the specified point in the hierarchy.
Examples
>Adding a conditional comment
Comment nodes are valid before doctype declarations but not advisablegiven they trigger quirks mode in IE. Aconditional commentworks for IE as well, though:
js
let docType = document.implementation.createDocumentType("html", "", "");let myDoc = document.implementation.createDocument("", "", docType);docType.before( document.createComment("<!--[if !IE]> conditional comment <![endif]-->"),);myDoc.childNodes;// NodeList [<!--[if !IE]> conditional comment <![endif]-->, <!DOCTYPE html>]Specifications
| Specification |
|---|
| DOM> # ref-for-dom-childnode-before①> |