DocumentFragment

The DocumentFragment interface represents a minimal document object that has no parent. It is used as a light-weight version of Document to store well-formed or potentially non-well-formed fragments of XML.

Various other methods can take a document fragment as an argument (e.g., any Node interface methods such as Node.appendChild and Node.insertBefore), in which case the children of the fragment are appended or inserted, not the fragment itself.

This interface is also of great use with Web components: <template> elements contains a DocumentFragment in their HTMLTemplateElement.content property.

An empty DocumentFragment can be created using the document.createDocumentFragment method or the constructor.

Properties

This interface has no specific property, but inherits those of its parent, Node, and implements those of the ParentNode interface.

ParentNode.children Read only
Returns a live HTMLCollection containing all objects of type Element that are children of the DocumentFragment object.
ParentNode.firstElementChild Read only
Returns the Element that is the first child of the DocumentFragment object, or null if there is none.
ParentNode.lastElementChild Read only
Returns the Element that is the last child of the DocumentFragment object, or null if there is none.
ParentNode.childElementCount Read only
Returns an unsigned long giving the amount of children that the DocumentFragment has.

Constructor

DocumentFragment()
Returns an empty DocumentFragment object.

Methods

This interface inherits the methods of its parent, Node, and implements those of the ParentNode interface.

DocumentFragment.find()
Returns the first matching Element in the tree of the DocumentFragment.
DocumentFragment.findAll()
Returns a NodeList of matching Element in the tree of the DocumentFragment.
DocumentFragment.querySelector()
Returns the first Element node within the DocumentFragment, in document order, that matches the specified selectors.
DocumentFragment.querySelectorAll()
Returns a NodeList of all the Element nodes within the DocumentFragment that match the specified selectors.
DocumentFragment.getElementById()
Returns the first Element node within the DocumentFragment, in document order, that matches the specified ID.

Specifications

Specification Status Comment
DOM
The definition of 'DocumentFragment' in that specification.
Living Standard Added the constructor and the implementation of ParentNode.
Selectors API Level 2
The definition of 'DocumentFragment' in that specification.
Working Draft Added the find() and findAll() methods.
Selectors API Level 1
The definition of 'DocumentFragment' in that specification.
Recommendation Added the querySelector() and querySelectorAll() methods.
Document Object Model (DOM) Level 3 Core Specification
The definition of 'DocumentFragment' in that specification.
Recommendation No change from Document Object Model (DOM) Level 2 Core Specification
Document Object Model (DOM) Level 2 Core Specification
The definition of 'DocumentFragment' in that specification.
Recommendation No change from Document Object Model (DOM) Level 1 Specification
Document Object Model (DOM) Level 1 Specification
The definition of 'DocumentFragment' in that specification.
Recommendation Initial definition

Browser compatibility

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari
Basic support 1.0 1.0 (1.7 or earlier) (Yes) (Yes) (Yes)
querySelector() and querySelectorAll() 1.0 3.5 (1.9.1) 8.0 10.0 3.2 (525.3)
findAll() and find() Not supported Not supported Not supported Not supported Not supported
DocumentFragment() constructor 28.0 24.0 (24.0) Not supported 15.0 Not supported
ParentNode properties 28.0 25.0 (25.0) Not supported 15.0 Not supported
ParentNode methods Not supported Not supported Not supported Not supported Not supported
Feature Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Basic support (Yes) 1.0 (1.0) (Yes) (Yes) (Yes)
querySelector() and querySelectorAll() 2.1 1.0 (1.0) 8.0 10.0 3.2 (525.3)
findAll() and find() Not supported Not supported Not supported Not supported Not supported
DocumentFragment() constructor ? 24.0 (24.0) Not supported ? ?
ParentNode properties (Yes) 25.0 (25.0) Not supported 5.0 Not supported
ParentNode methods Not supported Not supported Not supported Not supported Not supported

See also

Document Tags and Contributors

 Contributors to this page: fscholz, trevorh, cbb, MHasan, ziyunfei, teoli, Sheppy, ethertank, Brettz9
 Last updated by: fscholz,