We're looking for a person or people to help audit MDN to find places we could speed up. Is this you or someone you know? Check out the RFP: https://mzl.la/2IHcMiE

document.implementation Redirect 1


Returns a DOMImplementation object associated with the current document.


DOMImpObj = document.implementation;


var modName = "HTML";
var modVer = "2.0";
var conformTest = document.implementation.hasFeature( modName, modVer );

alert( "DOM " + modName + " " + modVer + " supported?: " + conformTest );

// alerts with: "DOM HTML 2.0 supported?: true" if DOM Level 2 HTML module is supported.

A list of module names (e.g., Core, HTML, XML, etc) is available in the DOM Level 2 Conformance Section


The W3C's DOM Level 1 Recommendation only specified the hasFeature method, which is one way to determine if a DOM module is supported by a browser (see example above and What does your user agent claim to support?). If available, other DOMImplementation methods provide services for controlling things outside of a single document. For example, the DOMImplementation interface includes a createDocumentType method with which DTDs can be created for one or more documents managed by the implementation.


Name Action Return
createDocument (namespaceURI, qualifiedNameStr, DocumentType )   document
createDocumentType ( qualifiedNameStr, publicId, systemId )   DocumentType
createHTMLDocument ( title )   document
getFeature ( feature, version )   DOMObject
hasFeature ( feature, version )   Boolean


Gecko-specific notes

  • Starting with Gecko 19.0 (Firefox 19.0 / Thunderbird 19.0 / SeaMonkey 2.16) the hasFeature method will always return true.

Document Tags and Contributors

 Last updated by: Sheppy,