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
Adding a conditional comment
Comment nodes are valid before doctype declarations but not advisable given they trigger quirks mode in IE. A conditional comment works 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① |