Comparison of layout engines (Document Object Model)
Lua error in package.lua at line 80: module 'strict' not found. Lua error in package.lua at line 80: module 'strict' not found. The following tables compare DOM compatibility and support for a number of layout engines. Please see the individual products' articles for further information. Unless otherwise specified in footnotes, comparisons are based on the stable versions without any add-ons, extensions or external programs.
For features that are fully supported (based on DOM Level 2 or DOM Level 3 modules that are under W3C Recommendation), an exact version number is given if it is certain that the feature was added in such version. DOM Level 0 and DOM Level 3 modules that are still under development are not included.
Contents
Explanation of the tables
Engine nomenclature
Rather than the names of web browsers, the names of the underlying engines are used. The browsers that use the various engines are listed below.
Layout engine | Release version | Preview version | Used by |
---|---|---|---|
Amaya | 11.4.7[1] | N/A | No longer developed; Amaya |
Blink | 537.36 | source code[note 1] | Chromium/Chrome (28+), Opera (15+), Yandex, Liebao and Samsung Browser[citation needed]. |
EdgeHTML | 13.10586 [2] | N/A | Microsoft Edge, Universal Windows Platform (UWP) JavaScript apps |
Gecko | 43.0.4 (January 6, 2016[3]) [±]
|
44.0 Beta 8 (January 12, 2016[5][6]) [±]
45.0a2 (December 18, 2015[7]) [±] daily release
|
All Mozilla software, including Firefox; SeaMonkey and Galeon; Camino; K-Meleon; Flock (up to 2.x); Debian IceWeasel; GNU IceCat (formerly GNU IceWeasel); Cyberfox; Icedove, Iceape and Iceowl; Firefox for mobile ("Fennec"). Also used by the Maple platform in 2010 and 2011 Samsung "SmartTV" devices which are based on the build used in Firefox 3.0.[citation needed] Nokia Asha platform is also using Gecko for web apps rendering. |
KHTML | 4.12.3[9] | N/A | Konqueror[note 2] |
Presto | 2.12.388 | N/A | No longer developed; Opera and Opera Mobile use Blink now; Nintendo DS & DSi Browser; Internet Channel |
Tasman | (IE 5.2.3 for Mac) | N/A | No longer developed (aborted in 2003); Internet Explorer 5+ for Mac OS X |
Trident | 7.0 (IE 11) | N/A | Internet Explorer and other Internet Explorer shells like Maxthon (Microsoft Windows operating systems only), Windows Phone 8 |
WebKit | 534.20 | nightly build[note 3] | Tizen (both OS and browser), Safari (both desktop and mobile), Google Chrome (before 28), Maxthon 3, Shiira, iCab 4, OmniWeb 5.5+, Web, Adobe AIR, Midori, Adobe Dreamweaver CS4 and CS5, Android browser, Palm webOS browser, Symbian S60 browser, OWB, Steam, Rekonq, Arora, Flock (version 3+), RockMelt, Dolphin Browser, Sleipnir, Konqueror[note 2]. Used by the LG Smart TV platform to enable web content on TVs. |
Values
Values indicate the level of support in the most recent version of the layout engine, or (if a version number is given) in the specified version. Version numbers without any other value indicate the version at which the layout engine first fully supported the feature.
Value | Meaning |
---|---|
Yes | Indicates that the layout engine fully supports this property/element when valid values are used. |
No | Indicates that the property/element is completely ignored. |
Partial | Indicates that the property/element is understood, but that not all values are supported. Supported values are implemented correctly. |
Incorrect | Indicates that the property/element is understood, but that it is not implemented correctly in all cases. |
Experimental | Indicates that the property/element is understood, but supported under an alternate name. May be incomplete or buggy. |
Dropped | Indicates that the property/element is no longer supported. |
Nightly build | Indicates that the property/element is supported to some extent in an experimental/nightly build. Future support is expected. |
Depends | Indicates that the property/element is supported only on certain platforms, or if certain settings are configured. |
General overview
Trident | Tasman | Gecko | WebKit | KHTML | Presto | |
---|---|---|---|---|---|---|
DOM1 | 6.0 | Yes | 1.0 | 85 | Yes | 1.0 |
DOM2 | Mostly | Partial | Mostly | Partial | Mostly | Mostly |
DOM3 | No | No | Partial | Partial | Partial | Partial |
Core (Fundamental)
The interfaces within this section are considered fundamental, and must be fully implemented by all conforming implementations of the DOM, including all HTML DOM implementations.
Trident | Tasman | Gecko | WebKit | KHTML | Presto | ||
---|---|---|---|---|---|---|---|
Exception DOMException | |||||||
DOM1 | code | 5.0[t 1] | ? | 1.0 | ? | ? | 1.0 |
Interface DOMStringList | |||||||
DOM3 | length | 6.0[t 2] | No | 1.6 | No | ? | 2.0 |
contains() | ? | ||||||
item() | ? | ||||||
Interface NameList | |||||||
DOM3 | length | No | No | 1.6 | No | No | No |
getName() | |||||||
getNamespaceURI() | |||||||
contains() | |||||||
containsNS() | |||||||
Interface DOMImplementationList | |||||||
DOM3 | length | No | No | No | No | No | No |
item() | |||||||
Interface DOMImplementationSource | |||||||
DOM3 | getDOMImplementation() | No | No | No | No | No | No |
getDOMImplementationList() | |||||||
Interface DOMImplementation | |||||||
DOM1 | hasFeature() | 6.0 | ? | 1.0 | Yes | ? | 1.0 |
DOM2 | createDocumentType() | 9.0[t 3] | No | ? | 1.0 | ||
createDocument() | ? | ||||||
DOM3 | getFeature() | No | No | No | ? | 1.0 | |
Interface DocumentFragment | |||||||
DOM1 | (no properties) | 6.0 | No | 1.0 | ? | ? | 1.0 |
Interface Document | |||||||
DOM1 | doctype | 9.0 | Yes | Partial | Yes | ? | 1.0 |
createElement() | 4.0 | 1.0 | ? | ||||
createTextNode() | 5.0 | ? | |||||
createAttribute() | 6.0 | ? | |||||
documentElement | 5.0 | ? | |||||
getElementsByTagName() | ? | ||||||
implementation | 6.0 | ? | |||||
createDocumentFragment() | No | ? | |||||
createComment() | ? | ||||||
createCDATASection() | 9.0[t 3] | ? | |||||
createProcessingInstruction() | ? | 1.7 | ? | ||||
createEntityReference() | No | ? | No [1] | ? | No | ||
DOM2 | importNode() | 9.0[t 3] | No | 1.0 | Yes | ? | 1.0 |
createElementNS() | ? | ||||||
createAttributeNS() | ? | ||||||
getElementsByTagNameNS() | ? | ||||||
getElementById() | 8.0 | Yes | ? | 2.1 | |||
DOM3 | adoptNode() | 9.0[t 3] | No | 1.7 | Yes | ? | 2.0 |
inputEncoding | No | ? | No | ||||
xmlEncoding | ? | ||||||
xmlStandalone | ? | ||||||
xmlVersion | ? | ||||||
domConfig | No | No | ? | ||||
strictErrorChecking | 1.7 | ? | |||||
documentURI | ? | ||||||
normalizeDocument() | ? | ||||||
renameNode() | ? | ||||||
Interface Node | |||||||
DOM1 | nodeName | 5.0 | Yes | 1.0 | Yes | ? | 1.0 |
nodeValue | ? | ||||||
nodeType | ? | ||||||
parentNode | ? | ||||||
childNodes | ? | ||||||
firstChild | ? | ||||||
lastChild | ? | ||||||
previousSibling | ? | ||||||
nextSibling | ? | ||||||
attributes | ? | ||||||
cloneNode() | ? | ||||||
insertBefore() | Partial | ? | |||||
replaceChild() | ? | ||||||
removeChild() | ? | ||||||
appendChild() | ? | ||||||
ownerDocument | 6.0 | 1.9 | ? | ||||
hasChildNodes() | 1.0 | ? | |||||
DOM2 | namespaceURI | 5.0 | Yes | 1.0 | Yes | ? | 1.0 |
prefix | ? | ||||||
localName | ? | ||||||
isSupported() | 9.0[t 3] | ? | |||||
hasAttributes() | ? | ||||||
DOM3 | isSameNode() | 9.0 | No | 1.8 | Yes | ? | 2.1 |
compareDocumentPosition() | 9.0[t 3] | 1.7 | 4.2.4 | ||||
baseURI | No | ? | Yes | ||||
textContent | 9.0[t 3] | ? | 2.0 | ||||
lookupPrefix() | ? | ||||||
isDefaultNamespace() | ? | ||||||
lookupNamespaceURI() | ? | ||||||
getFeature() | No | ? | |||||
setUserData() | ? | No | |||||
getUserData() | ? | ||||||
isEqualNode() | 9.0[t 3] | 1.9 | ? | 2.7 | |||
Interface NodeList | |||||||
DOM1 | length | 5.0 | Yes | 1.0 | Yes | ? | 1.0 |
item() | ? | ||||||
Interface NamedNodeMap | |||||||
DOM1 | length | 5.0 | Yes | 1.0 | Yes | ? | 1.0 |
getNamedItem() | ? | ||||||
setNamedItem() | ? | ||||||
removeNamedItem() | ? | ||||||
item() | ? | ||||||
DOM2 | getNamedItemNS() | 9.0[t 3] | No | 1.0 | Yes | ? | 1.0 |
setNamedItemNS() | ? | ||||||
removeNamedItemNS() | ? | ||||||
Interface CharacterData | |||||||
DOM1 | data | 4.0 | Yes | 1.0 | Yes | ? | 1.0 |
length | ? | ||||||
substringData() | ? | ||||||
appendData() | ? | ||||||
insertData() | ? | ||||||
deleteData() | ? | ||||||
replaceData() | ? | ||||||
Interface Attr | |||||||
DOM1 | name | 6.0 | ? | 1.0 | Yes | Yes | 1.0 |
value | ? | ||||||
specified | Incorrect | Incorrect | 1.9.1 | Yes | Yes | ||
DOM2 | ownerElement | 9.0[t 3] | ? | 1.0 | Yes | Yes | 1.0 |
DOM3 | schemaTypeInfo | No | No | No | No | ? | No |
isId | 1.9 | No | |||||
Interface Element | |||||||
DOM1 | tagName | 4.0 | Yes | 1.0 | Yes | Yes | 1.0 |
getElementsByTagName() | |||||||
getAttribute() | 8.0 | ||||||
setAttribute() | |||||||
removeAttribute() | |||||||
getAttributeNode() | 6.0 | ||||||
setAttributeNode() | 9.0[t 3] | ||||||
removeAttributeNode() | |||||||
normalize() | No | ? | |||||
DOM2 | getAttributeNS() | 9.0[t 3] | Yes | 1.0 | Yes | ? | 1.0 |
setAttributeNS() | ? | ||||||
removeAttributeNS() | ? | ||||||
getAttributeNodeNS() | ? | ||||||
setAttributeNodeNS() | ? | ||||||
getElementsByTagNameNS() | No | ? | |||||
hasAttribute() | Yes | ? | |||||
hasAttributeNS() | ? | ||||||
DOM3 | schemaTypeInfo | No | No | No | No | ? | No |
setIdAttribute() | ? | ||||||
setIdAttributeNS() | ? | ||||||
setIdAttributeNode() | ? | ||||||
Interface Text | |||||||
DOM1 | splitText() | 9.0[t 3] | Yes | 1.0 | Yes | ? | 1.0 |
DOM3 | isElementContentWhitespace | No | No | 1.9.1 | No | ? | Yes |
wholeText | 9.0[t 3] | ? | 2.1 | ||||
replaceWholeText() | ? | ||||||
Interface Comment | |||||||
DOM1 | (no properties) | 6.0 | No | 1.0 | Yes | ? | 1.0 |
Interface TypeInfo | |||||||
DOM3 | typeName | No | No | No | No | No | No |
typeNamespace | |||||||
isDerivedFrom() | |||||||
Interface UserDataHandler | |||||||
DOM3 | handle() | No | No | No | No | No | No |
Interface DOMError | |||||||
DOM3 | severity | No | No | No | No | No | 2.0 |
message | |||||||
type | |||||||
location | |||||||
relatedData | |||||||
relatedException | No | ||||||
Interface DOMErrorHandler | |||||||
DOM3 | handleError() | No | No | No | No | No | 2.0 |
Interface DOMLocator | |||||||
DOM3 | lineNumber | No | No | No | No | No | 2.0 |
columnNumber | |||||||
byteOffset | |||||||
utf16Offset | |||||||
relatedNode | |||||||
uri | |||||||
Interface DOMConfiguration | |||||||
DOM3 | parameterNames | No | No | No | No | ? | 2.0 |
setParameter() | ? | ||||||
getParameter() | ? | ||||||
canSetParameter() | ? |
Trident Core (Fundamental) notes
- doctype — Prior to version 9.0, returns true when checked but always contains null.
- getElementById() — Prior to version 8.0 returned elements with name attribute set to value being found, not only id.[t 4]
- getAttribute(), setAttribute(), removeAttribute() — prior to version 8.0 returned, set, or removed, respectively, the corresponding DOM property instead of the string value of the attribute.
- AttributeNode.specified — Does not set
specified
totrue
if ownerElement is null. - Node.isSameNode — Prior to version 9.0, only supported for XML documents.
Tasman Core (Fundamental) notes
- AttributeNode.specified — Does not set
specified
totrue
if ownerElement is null.
Gecko Core (Fundamental) notes
- insertBefore(), replaceChild(), removeChild(), appendChild() — Fails on
Attr
nodes.[g 1]appendChild
does not work as expected forDocumentFragment
nodes prior to 1.8. - AttributeNode.specified — Prior to 1.9.1 does not set
specified
totrue
if ownerElement is null. Does not create Attribute Nodes for default values specified in the DTD.
Presto Core (Fundamental) notes
- getElementById() — Versions prior to Opera 9.50 returns elements with name attribute set to value being found, not only id.[p 1]
- URI attribute value — In versions prior to Opera 9, all URI attribute values are resolved to full URI. Hence the value from
getAttribute()
andgetAttributeNode()
could be wrong if relative URIs are used. - Attributes that are not supported in the layout engine are still parsed and available through DOM. E.g. char and charoff are available under .ch and .chOff.
- In Opera 8.54 methods DOMImplementation.createDocument and DOMDocument.createElementNS both fail to accept any non-empty namespace URI. They work in Opera 9 Beta 2 and they may also have worked before (somebody with Opera 8, please check.) The symptom is that the namespaceURI property is null/empty and serialization gives wrong result.
WebKit Core (Fundamental) notes
- AttributeNode.specified — Does not create Attribute Nodes for default values specified in the DTD.
KHTML Core (Fundamental) notes
- AttributeNode.specified — Does not create Attribute Nodes for default values specified in the DTD.
Core (Extended)
The interfaces defined here form part of the DOM Core specification, but objects that expose these interfaces will never be encountered in a DOM implementation that deals only with HTML.
Trident | Tasman | Gecko | WebKit | KHTML | Presto | ||
---|---|---|---|---|---|---|---|
Interface CDATASection | |||||||
DOM1 | (no properties) | No | No | 1.0 | Yes | ? | 2.0 |
Interface DocumentType | |||||||
DOM1 | name | No | No | 1.0 | Yes | ? | 1.0 |
entities | No[g 2] | ? | |||||
notations | ? | ||||||
DOM2 | publicId | No | No | 1.0 | Yes | ? | 1.0 |
systemId | ? | ||||||
internalSubset | ? | ||||||
Interface Notation | |||||||
DOM1 | publicId | No | No | 1.0 | Yes | ? | 2.0 |
systemId | ? | ||||||
Interface Entity | |||||||
DOM1 | publicId | No | No | 1.0 | Yes | ? | No |
systemId | ? | ||||||
notationName | ? | ||||||
DOM3 | inputEncoding | No | No | No | No | ? | No |
xmlEncoding | ? | ||||||
xmlVersion | ? | ||||||
Interface EntityReference | |||||||
DOM1 | (no properties) | No | No | 1.0 | Yes | ? | No |
Interface ProcessingInstruction | |||||||
DOM1 | target | No | No | 1.0 | Yes | ? | 2.0 |
data | ? |
HTML
The interfaces found within this section are not mandatory. This section extends the DOM Core API to describe objects and methods specific to HTML documents, and XHTML documents. In general, the functionality needed to manipulate hierarchical document structures, elements, and attributes will be found in the core section; functionality that depends on the specific elements defined in HTML will be found in this section. Elements deprecated since HTML 4.01 are not listed. Some elements and attributes listed here are deprecated in XHTML 1.1. For example, presentation attributes, image maps, frames and targets.
Trident | Tasman | Gecko | WebKit | KHTML | Presto | ||
---|---|---|---|---|---|---|---|
Interface HTMLCollection | |||||||
DOM1 | length | 7.0 | ? | 1.0 | ? | ? | 1.0 |
item() | ? | ? | ? | ||||
namedItem() | ? | ? | ? | ||||
Interface HTMLOptionsCollection | |||||||
DOM2 | length | ? | ? | 1.0 | ? | ? | 2.0 |
item() | ? | ? | ? | ? | |||
namedItem() | ? | ? | ? | ? | |||
Interface HTMLDocument | |||||||
DOM1 | domain | 4.0 | Yes | 1.0 | Yes | ? | 1.0 |
URL | ? | ||||||
body | ? | ||||||
images | ? | ||||||
applets | ? | ||||||
title | 3.0 | ? | |||||
referrer | ? | ||||||
links | ? | ||||||
forms | ? | ||||||
anchors | ? | ||||||
cookie | ? | ||||||
open() | ? | ||||||
close() | ? | ||||||
write() | ? | ||||||
writeln() | ? | ||||||
getElementsByName() | Yes | ? | ? | ||||
Interface HTMLElement | |||||||
DOM1 | id | 4.0 | Yes | 1.0 | ? | ? | 1.0 |
title | ? | ? | |||||
lang | ? | ? | |||||
className | ? | ? | |||||
dir | 5.0 | ? | ? | ||||
Interface HTMLHtmlElement | |||||||
DOM1 | version | 6.0 | ? | 1.0 | ? | ? | 2.0 |
Interface HTMLHeadElement | |||||||
DOM1 | profile | 8.0 | ? | 1.0 | ? | ? | 1.0 |
Interface HTMLLinkElement | |||||||
DOM1 | disabled | 4.0 | Yes | 1.0 | ? | ? | 1.0 |
charset | ? | ? | |||||
href | 8.0 | ? | ? | ||||
hreflang | 4.0 | ? | ? | ||||
media | ? | ? | |||||
rel | ? | ? | |||||
rev | ? | ? | |||||
target | ? | ? | |||||
type | ? | ? | |||||
Interface HTMLTitleElement | |||||||
DOM1 | text | 4.0 | Yes | 1.0 | ? | ? | 1.0 |
Interface HTMLMetaElement | |||||||
DOM1 | content | 4.0 | Yes | 1.0 | ? | ? | 1.0 |
httpEquiv | ? | ? | |||||
name | ? | ? | |||||
scheme | 6.0 | ? | ? | ? | 2.0 | ||
Interface HTMLBaseElement | |||||||
DOM1 | href | 8.0 | Yes | 1.0 | ? | ? | 2.0 |
target | 4.0 | ? | ? | ||||
Interface HTMLStyleElement | |||||||
DOM2 | disabled | ? | ? | 1.0 | ? | ? | 1.0 |
media | 4.0 | Yes | ? | ? | |||
type | ? | ? | |||||
Interface HTMLBodyElement | |||||||
DOM1 | aLink | 4.0 | Yes | 1.0 | ? | ? | 1.0 |
background | 8.0 | ? | ? | ||||
bgColor | 4.0 | ? | ? | ||||
link | ? | ? | |||||
text | ? | ? | |||||
vLink | ? | ? | |||||
Interface HTMLFormElement | |||||||
DOM1 | action | 8.0 | Yes | 1.9 | ? | ? | 1.0 |
acceptEncoding | ? | ? | 1.0 | ? | ? | ||
elements | 3.0 | Yes | ? | ? | |||
length | ? | ? | |||||
name | ? | ? | |||||
enctype | 4.0 | ? | ? | ||||
method | 3.0 | ? | ? | ||||
target | ? | ? | |||||
submit() | ? | ? | |||||
reset() | 4.0 | ? | ? | ||||
Interface HTMLSelectElement | |||||||
DOM1 | selectedIndex | 3.0 | Yes | 1.0 | ? | ? | 1.0 |
length | ? | ? | |||||
options | ? | ? | |||||
name | ? | ? | |||||
size | 4.0 | ? | ? | ||||
type | ? | ? | |||||
value | ? | ? | |||||
disabled | 5.0 | ? | ? | ||||
multiple | ? | ? | |||||
form | ? | ? | ? | ? | |||
tabIndex | ? | ? | ? | ? | |||
add() | ? | ? | ? | ? | |||
remove() | ? | ? | ? | ? | |||
blur() | 3.0 | Yes | ? | ? | |||
focus() | ? | ? | |||||
Interface HTMLOptGroupElement | |||||||
DOM1 | disabled | ? | ? | 1.0 | ? | ? | 2.0 |
label | No | Yes | ? | ? | |||
Interface HTMLOptionElement | |||||||
DOM1 | form | 4.0 | Yes | 1.0 | ? | ? | 1.0 |
defaultSelected | ? | ? | |||||
text | ? | ? | |||||
index | ? | ? | ? | ? | |||
disabled | ? | ? | ? | ? | |||
label | 6.0 | Yes | ? | ? | 2.0 | ||
selected | 4.0 | ? | ? | 1.0 | |||
value | ? | ? | |||||
Interface HTMLInputElement | |||||||
DOM1 | defaultValue | 3.0 | Yes | 1.0 | ? | ? | 1.0 |
defaultChecked | ? | ? | |||||
form | ? | ? | |||||
accept | ? | ? | ? | ? | |||
accesskey | ? | ? | ? | ? | |||
align | ? | ? | ? | ? | |||
alt | ? | ? | ? | ? | |||
checked | 3.0 | Yes | ? | ? | |||
disabled | 5.0 | ? | ? | ||||
maxLength | 4.0 | ? | ? | 2.0 | |||
name | 3.0 | ? | ? | 1.0 | |||
readOnly | 4.0 | ? | ? | ||||
size | ? | ? | |||||
src | 1.9 | ? | ? | ||||
tabIndex | ? | ? | 1.0 | ? | ? | ||
type | 4.0 | Yes | ? | ? | |||
useMap | ? | ? | ? | ? | |||
value | 3.0 | Yes | ? | ? | |||
blur() | ? | ? | |||||
focus() | ? | ? | |||||
select() | ? | ? | |||||
click() | ? | ? | |||||
Interface HTMLTextAreaElement | |||||||
DOM1 | defaultValue | 3.0 | Yes | 1.0 | ? | ? | 1.0 |
form | ? | ? | |||||
accesskey | ? | ? | ? | ? | |||
cols | 4.0 | Yes | ? | ? | |||
disabled | 5.0 | ? | ? | ||||
name | 3.0 | ? | ? | ||||
readOnly | 4.0 | ? | ? | ||||
rows | ? | ? | |||||
tabIndex | ? | ? | ? | ? | |||
type | 4.0 | Yes | ? | ? | |||
value | 3.0 | ? | ? | ||||
blur() | ? | ? | |||||
focus() | ? | ? | |||||
select() | ? | ? | |||||
Interface HTMLButtonElement | |||||||
DOM1 | form | 3.0 | Yes | 1.0 | ? | ? | 1.0 |
accesskey | ? | ? | ? | ? | |||
disabled | 5.0 | Yes | ? | ? | |||
name | 3.0 | ? | ? | ||||
tabIndex | ? | ? | ? | ? | |||
type | 3.0 | Yes | ? | ? | |||
value | ? | ? | |||||
Interface HTMLLabelElement | |||||||
DOM1 | form | 6.0 | Yes | 1.0 | ? | ? | 1.0 |
accesskey | 5.0 | ? | ? | ||||
htmlFor | 4.0 | ? | ? | ||||
Interface HTMLFieldSetElement | |||||||
DOM1 | form | 5.0 | Yes | 1.0 | ? | ? | 1.0 |
Interface HTMLLegendElement | |||||||
DOM1 | form | 5.0 | Yes | 1.0 | ? | ? | 1.0 |
accesskey | ? | ? | ? | ? | |||
align | 5.0 | Yes | ? | ? | |||
Interface HTMLUListElement | |||||||
DOM1 | compact | 4.0 | Yes | 1.0 | ? | ? | 1.0 |
type | ? | ? | |||||
Interface HTMLOListElement | |||||||
DOM1 | compact | 4.0 | Yes | 1.0 | ? | ? | 1.0 |
start | ? | ? | |||||
type | ? | ? | |||||
Interface HTMLDListElement | |||||||
DOM1 | compact | 4.0 | Yes | 1.0 | ? | ? | 1.0 |
Interface HTMLLIElement | |||||||
DOM1 | type | 4.0 | Yes | 1.0 | ? | ? | 1.0 |
value | ? | ? | |||||
Interface HTMLDivElement | |||||||
DOM1 | align | ? | ? | 1.0 | ? | ? | 1.0 |
Interface HTMLParagraphElement | |||||||
DOM1 | align | ? | ? | 1.0 | ? | ? | 1.0 |
Interface HTMLHeadingElement | |||||||
DOM1 | align | 4.0 | Yes | 1.0 | ? | ? | 1.0 |
Interface HTMLQuoteElement | |||||||
DOM1 | cite | 8.0 | Yes | 1.0 | ? | ? | 1.0 |
Interface HTMLPreElement | |||||||
DOM1 | width | ? | ? | 1.0 | ? | ? | 1.0 |
Interface HTMLBRElement | |||||||
DOM1 | clear | 4.0 | Yes | 1.0 | ? | ? | 1.0 |
Interface HTMLHRElement | |||||||
DOM1 | align | 4.0 | Yes | 1.0 | ? | ? | 1.0 |
noShade | ? | ? | |||||
size | ? | ? | |||||
width | ? | ? | |||||
Interface HTMLModElement | |||||||
DOM1 | cite | 8.0 | ? | 1.9 | ? | ? | 1.0 |
dateTime | ? | ? | 1.0 | ? | ? | ||
Interface HTMLAnchorElement | |||||||
DOM1 | accesskey | ? | ? | 1.0 | ? | ? | 1.0 |
charset | 6.0 | Yes | ? | ? | |||
coords | ? | ? | |||||
href | 3.0 | ? | ? | ||||
hreflang | 6.0 | ? | ? | ||||
name | 4.0 | ? | ? | ||||
rel | ? | ? | |||||
rev | ? | ? | |||||
shape | 6.0 | ? | ? | ||||
tabIndex | ? | ? | ? | ? | |||
target | 3.0 | Yes | ? | ? | |||
type | 6.0 | ? | ? | ||||
blur() | ? | ? | ? | ? | |||
focus() | ? | ? | ? | ? | |||
Interface HTMLImageElement | |||||||
DOM1 | name | 4.0 | Yes | 1.0 | ? | ? | 1.0 |
align | ? | ? | |||||
alt | ? | ? | |||||
border | ? | ? | |||||
height | ? | ? | |||||
hspace | ? | ? | |||||
isMap | ? | ? | |||||
longDesc | 8.0 | ? | ? | ? | 2.0 | ||
src | 4.0 | Yes | ? | ? | 1.0 | ||
useMap | ? | ? | |||||
vspace | ? | ? | |||||
width | ? | ? | |||||
Interface HTMLObjectElement | |||||||
DOM1 | form | ? | ? | 1.0 | ? | ? | 1.0 |
code | 4.0 | Yes | ? | ? | |||
align | ? | ? | |||||
archive | ? | ? | ? | ? | |||
border | ? | ? | ? | ? | |||
codeBase | 8.0 | Yes | ? | ? | |||
codeType | 4.0 | ? | ? | ||||
data | 8.0 | ? | ? | ||||
declare | ? | ? | ? | ? | 2.0 | ||
height | 4.0 | Yes | ? | ? | 1.0 | ||
hspace | ? | ? | |||||
name | ? | ? | |||||
standby | ? | ? | ? | ? | |||
tabIndex | ? | ? | ? | ? | |||
type | 4.0 | Yes | ? | ? | |||
useMap | ? | ? | ? | ? | |||
vspace | 4.0 | Yes | ? | ? | |||
width | ? | ? | |||||
DOM2 | contentDocument | No | ? | ? | 2.0 | ||
Interface HTMLParamElement | |||||||
DOM1 | name | ? | ? | 1.0 | ? | ? | 1.0 |
type | ? | ? | ? | ? | |||
value | ? | ? | ? | ? | |||
valueType | No | ? | ? | ? | |||
Interface HTMLMapElement | |||||||
DOM1 | areas | 4.0 | Yes | 1.0 | ? | ? | 1.0 |
name | ? | ? | |||||
Interface HTMLAreaElement | |||||||
DOM1 | accesskey | ? | ? | 1.0 | ? | ? | 1.0 |
alt | 4.0 | Yes | ? | ? | |||
coords | ? | ? | |||||
hrefs | ? | ? | ? | ? | |||
noHrefs | ? | ? | ? | ? | |||
shape | 4.0 | Yes | ? | ? | |||
tabIndex | ? | ? | ? | ? | |||
target | 4.0 | Yes | ? | ? | |||
Interface HTMLScriptElement | |||||||
DOM1 | text | 4.0 | 0 | 1.0 | ? | ? | 1.0 |
htmlFor (reserved for future use) | Yes | ? | ? | No | |||
event (reserved for future use) | ? | ? | 2.0 | ||||
charset | ? | ? | ? | ? | 1.0 | ||
defer | 4.0 | Yes | ? | ? | |||
src | 8.0 | ? | ? | ||||
type | 4.0 | ? | ? | ||||
target | ? | ? | ? | ? | |||
Interface HTMLTableElement | |||||||
DOM1 | caption | 4.0 | Yes | 1.0 | ? | ? | 1.0 |
tHead | ? | ? | |||||
tFoot | ? | ? | |||||
rows | ? | ? | |||||
tBodies | ? | ? | |||||
align | ? | ? | |||||
bgColor | ? | ? | |||||
border | ? | ? | |||||
cellPadding | No | ? | |||||
cellSpacing | ? | ? | |||||
frame | ? | ? | |||||
rules | No | ? | ? | ||||
summary | 6.0 | ? | ? | ||||
width | 4.0 | Yes | ? | ? | |||
createTHead() | ? | ? | |||||
deleteTHead() | ? | ? | |||||
createTFoot() | ? | ? | |||||
deleteTFoot() | ? | ? | |||||
createCaption() | ? | ? | |||||
deleteCaption() | ? | ? | |||||
insertRow() | ? | ? | |||||
deleteRow() | ? | ? | |||||
Interface HTMLTableCaptionElement | |||||||
DOM1 | align | 5.0 | Yes | 1.0 | ? | ? | 1.0 |
Interface HTMLTableColElement | |||||||
DOM1 | align | 4.0 | Yes | 1.0 | ? | ? | 1.0 |
ch | 6.0 | No | ? | ? | 2.0 | ||
chOff | ? | ? | |||||
span | 5.0 | Yes | ? | ? | 1.0 | ||
vAlign | 4.0 | ? | ? | ||||
width | 5.0 | 0 | ? | ? | |||
Interface HTMLTableSectionElement | |||||||
DOM1 | align | 4.0 | Yes | 1.0 | ? | ? | 1.0 |
ch | 6.0 | No | ? | ? | 2.0 | ||
chOff | ? | ? | |||||
vAlign | 4.0 | Yes | ? | ? | 1.0 | ||
rows | ? | ? | |||||
insertRow() | ? | ? | |||||
deleteRow() | ? | ? | |||||
Interface HTMLTableRowElement | |||||||
DOM1 | rowIndex | 4.0 | Yes | 1.0 | ? | ? | 1.0 |
sectionRowIndex | ? | ? | |||||
cells | ? | ? | |||||
align | ? | ? | |||||
bgColor | ? | ? | |||||
ch | 6.0 | No | ? | ? | 2.0 | ||
chOff | ? | ? | |||||
vAlign | 4.0 | Yes | ? | ? | 1.0 | ||
insertCell() | ? | ? | |||||
deleteCell() | ? | ? | |||||
Interface HTMLTableCellElement | |||||||
DOM1 | cellIndex | 4.0 | Yes | 1.0 | Incorrect | ? | 1.0 |
abbr | 6.0 | ? | ? | 2.0 | |||
align | 4.0 | ? | ? | 1.0 | |||
axis | 6.0 | ? | ? | ||||
bgColor | 4.0 | ? | ? | ||||
ch | 6.0 | No | ? | ? | 2.0 | ||
chOff | ? | ? | |||||
colSpan | 4.0 | Yes | ? | ? | 1.0 | ||
headers | 6.0 | ? | ? | ||||
height | 4.0 | ? | ? | ||||
noWrap | ? | ? | |||||
rowSpan | ? | ? | |||||
scope | ? | ? | ? | ? | |||
vAlign | 4.0 | Yes | ? | ? | |||
width | ? | ? | |||||
Interface HTMLFrameSetElement | |||||||
DOM1 | cols | 4.0 | Yes | 1.0 | ? | ? | 1.0 |
rows | ? | ? | |||||
Interface HTMLFrameElement | |||||||
DOM1 | frameBorder | 4.0 | Yes | 1.0 | ? | ? | 1.0 |
longDesc | 8.0 | ? | ? | ||||
marginHeight | 6.0 | ? | ? | ||||
marginWidth | ? | ? | |||||
name | 4.0 | ? | ? | ||||
noResize | ? | ? | |||||
scrolling | ? | ? | |||||
src | 8.0 | ? | ? | ||||
DOM2 | contentDocument | No | Yes | 1.0 | ? | ? | 1.0 |
Interface HTMLIFrameSetElement | |||||||
DOM1 | align | 4.0 | Yes | 1.0 | ? | ? | 1.0 |
frameBorder | ? | ? | ? | ? | |||
height | 4.0 | Yes | ? | ? | |||
longDesc | 8.0 | ? | ? | ||||
marginHeight | 4.0 | ? | ? | ||||
marginWidth | ? | ? | |||||
name | ? | ? | |||||
scrolling | ? | ? | |||||
src | 8.0 | ? | ? | ||||
width | 4.0 | ? | ? | ||||
DOM2 | contentDocument | No | ? | ? |
Trident HTML notes
- profile, href, background, action, cite, longDesc, codebase, data, src — Prior to version 8.0 relative URLs were not resolved to full URLs.[t 5]
WebKit HTML notes
- cellIndex — Always return zero.[citation needed]
Presto HTML notes
- text — Opera 8 and lower returned data at
src
, when it should return inline data instead.
Style (Style Sheets)
The interfaces found within this section are not mandatory. The interfaces in this section are base interfaces used to represent any type of style sheet.
Trident | Tasman | Gecko | WebKit | KHTML | Presto | ||
---|---|---|---|---|---|---|---|
Interface StyleSheet | |||||||
DOM2 | type | 6.0 | ? | 1.0 | Yes | ? | 2.0 |
disabled | ? | ? | |||||
ownerNode | No | ? | ? | ||||
parentStyleSheet | 6.0 | ? | ? | ||||
href | 8.0 | ? | ? | ||||
title | 6.0 | ? | ? | ||||
media | Incorrect | ? | ? | ||||
Interface StyleSheetList | |||||||
DOM2 | length | 6.0 | ? | 1.0 | Yes | ? | 2.0 |
item() | ? | ? | |||||
Interface MediaList | |||||||
DOM2 | mediaText | No | ? | 1.0 | Yes | ? | 2.0 |
length | ? | ? | |||||
item() | ? | ? | |||||
deleteMedium() | ? | ? | |||||
appendMedium() | ? | ? | |||||
Interface LinkStyle | |||||||
DOM2 | sheet | No | ? | 1.0 | No | ? | 2.0 |
Interface DocumentStyle | |||||||
DOM2 | styleSheets | No | ? | 1.0 | No | ? | 2.0 |
Trident Style (Style Sheets) notes
- href — Prior to version 8.0 relative URLs were not resolved to full URLs.[t 5]
- media — Returns string instead of
MediaList
.
Style (CSS Fundamental)
The interfaces within this section are considered fundamental CSS interfaces, and must be supported by all conforming implementations of the CSS module. These interfaces represent CSS style sheets specifically.
Trident | Tasman | Gecko | WebKit | KHTML | Presto | ||
---|---|---|---|---|---|---|---|
Interface CSSStyleSheet | |||||||
DOM2 | ownerRule | No | ? | 1.0 | ? | ? | 2.0 |
cssRules | Yes | 1.3 | ? | ||||
insertRule() | No | No | ? | ||||
deleteRule() | ? | ||||||
Interface StyleSheetList | |||||||
DOM2 | length | 6.0 | ? | 1.0 | ? | ? | 2.0 |
item() | ? | ? | ? | ||||
Interface CSSRuleList | |||||||
DOM2 | length | No | ? | 1.0 | ? | ? | 2.0 |
item() | ? | ? | ? | ||||
Interface CSSRule | |||||||
DOM2 | type | No | ? | 1.0 | ? | ? | 2.0 |
cssText | Yes | ? | ? | ||||
parentStyleSheet | 1.3 | ? | |||||
parentRule | ? | ? | ? | ||||
Interface CSSStyleRule | |||||||
DOM2 | selectorText | 6.0 | Yes | 1.0 | 1.3 | ? | 2.0 |
style | No | ? | ? | ? | |||
Interface CSSMediaRule | |||||||
DOM2 | media | No | ? | 1.0 | ? | ? | 2.0 |
cssRules | ? | ? | ? | ||||
insertRule() | ? | ? | ? | ||||
deleteRule() | ? | ? | ? | ||||
Interface CSSFontFaceRule | |||||||
DOM2 | style | No | ? | 1.9.1[g 3] | ? | ? | 2.0 |
Interface CSSPageRule | |||||||
DOM2 | selectorText | No | ? | No[g 4] | ? | ? | 2.0 |
style | ? | ? | ? | ||||
Interface CSSImportRule | |||||||
DOM2 | href | No | Yes | 1.0 | 1.3 | ? | 2.0 |
media | ? | ? | ? | ||||
styleSheet | ? | ? | ? | ||||
Interface CSSCharsetRule | |||||||
DOM2 | encoding | No | ? | 1.0 | ? | ? | 2.0 |
Interface CSSUnknownRule | |||||||
DOM2 | (no properties) | No | ? | No[g 5] | ? | ? | 2.0 |
Interface CSSStyleDeclaration | |||||||
DOM2 | cssText | No | ? | 1.0 | ? | ? | 2.0 |
length | ? | ? | ? | ||||
parentRule | ? | ? | ? | ||||
getPropertyValue() | Yes | 1.3 | ? | 1.0 | |||
getPropertyCSSValue() | ? | No[g 6] | ? | ? | 2.0 | ||
removeProperty() | No | 1.0 | 1.3 | ? | 1.0 | ||
getPropertyPriority() | Incorrect | ? | ? | 2.0 | |||
setProperty() | Yes | 1.3 | ? | 1.0 | |||
item() | ? | ? | ? | 2.0 | |||
Interface CSSValue | |||||||
DOM2 | cssText | No | ? | No[g 6] | ? | ? | No |
cssValueType | ? | ? | ? | ||||
Interface CSSPrimitiveValue | |||||||
DOM2 | primitiveType | No | ? | No[g 7] | ? | ? | No |
setFloatValue() | ? | No | ? | ? | |||
getFloatValue() | ? | ? | ? | ||||
setStringValue() | ? | ? | ? | ||||
getStringValue() | ? | ? | ? | ||||
getCounterValue() | ? | ? | ? | ||||
getRectValue() | ? | ? | ? | ||||
getRGBColorValue() | ? | ? | ? | ||||
Interface CSSValueList | |||||||
DOM2 | length | No | ? | No | ? | ? | No |
item() | ? | ? | ? | ||||
Interface RGBColor | |||||||
DOM2 | red | No | ? | No | ? | ? | No |
green | ? | ? | ? | ||||
blue | ? | ? | ? | ||||
Interface Rect | |||||||
DOM2 | top | No | ? | No | ? | ? | No |
right | ? | ? | ? | ||||
bottom | ? | ? | ? | ||||
left | ? | ? | ? | ||||
Interface Counter | |||||||
DOM2 | identifier | No | ? | No | ? | ? | No |
listStyle | ? | ? | ? | ||||
separator | ? | ? | ? | ||||
Interface ViewCSS | |||||||
DOM2 | getComputedStyle() | No | No | 1.0 | No | ? | 1.0 |
Interface DocumentCSS | |||||||
DOM2 | getOverrideStyle() | No | ? | No[g 8] | ? | ? | No |
Interface DOMImplementationCSS | |||||||
DOM2 | createCSSStyleSheet() | No | ? | No[g 9] | ? | ? | No |
Interface ElementCSSInlineStyle | |||||||
DOM2 | style | 6.0 | Yes | 1.0 | 1.3 | Yes | 1.0 |
Tasman Style (CSS Fundamental) notes
- getPropertyPriority() — Returns
!important
instead ofimportant
.
Style (CSS Extended)
The interfaces found within this section are not mandatory.
Trident | Tasman | Gecko | WebKit | KHTML | Presto | ||
---|---|---|---|---|---|---|---|
Interface CSS2Properties | |||||||
DOM2 | Support this interface | 4.0 | Yes | 1.0 | ? | ? | 1.0 |
Properties | Please refer to Comparison of layout engines (Cascading Style Sheets) for the comparison of CSS properties. |
Events
The interfaces found within this section are not mandatory. The first goal is the design of a generic event system which allows registration of event handlers, describes event flow through a tree structure, and provides basic contextual information for each event. The second goal of the event model is to provide a common subset of the current event systems used in DOM Level 0 browsers. See also DOM Events for details.
Trident | Tasman | Gecko | WebKit | KHTML | Presto | ||
---|---|---|---|---|---|---|---|
Interface EventTarget | |||||||
DOM2 | addEventListener() | 5.0[t 6] | No | 1.0 | Yes | Yes | 1.0 |
removeEventListener() | |||||||
dispatchEvent() | ? | ? | |||||
Interface EventListener | |||||||
DOM2 | handleEvent() | ? | ? | ? | ? | ? | 1.0 |
Interface Event | |||||||
DOM2 | type | 4.0 | Yes | 1.0 | ? | ? | 1.0 |
target | No | 1.3 | Incorrect | ? | |||
currentTarget | No | 1.0 | ? | ? | |||
eventPhase | ? | ? | |||||
bubbles | ? | ? | |||||
cancelable | ? | ? | |||||
timeStamp | Yes | ? | ? | ||||
stopPropagation() | 1.0 | ? | ? | ||||
preventDefault() | ? | ? | |||||
initEvent() | ? | ? | |||||
Exception EventException | |||||||
DOM2 | code | No | No | 1.0 | ? | ? | 1.0 |
Interface DocumentEvent | |||||||
DOM2 | createEvent() | No | No | 1.0 | ? | ? | 1.0 |
Interface UIEvent | |||||||
DOM2 | view | No | No | No[g 10] | ? | ? | 1.0 |
detail | ? | ? | |||||
initUIEvent() | ? | ? | |||||
Events for interface UIEvent | |||||||
DOM2 | DOMFocusIn | No | No | No[g 10] | ? | ? | 1.0 |
DOMFocusOut | ? | ? | |||||
DOMActivate | ? | ? | |||||
Interface MouseEvent | |||||||
DOM2 | screenX | 4.0 | Yes | 1.0 | Yes | ? | 1.0 |
screenY | ? | ||||||
clientX | Incorrect | ? | |||||
clientY | Incorrect | ? | |||||
ctrlKey | Yes | ? | |||||
shiftKey | ? | ||||||
altKey | ? | ||||||
metaKey | No | No | ? | ||||
button | Incorrect | Incorrect | Incorrect | ? | 1.0 | ||
relatedTarget | No | No | Yes | ? | 1.0 | ||
initMouseEvent() | ? | ? | ? | ? | |||
Events for interface MouseEvent | |||||||
DOM2 | click | 4.0 | Yes | 1.0 | ? | ? | 1.0 |
mousedown | ? | ? | |||||
mouseup | ? | ? | |||||
mouseover | ? | ? | |||||
mousemove | ? | ? | |||||
mouseout | ? | ? | |||||
Interface MutationEvent | |||||||
DOM2 | relatedNode | No | No | 1.0 | ? | ? | 1.0 |
prevValue | ? | ? | |||||
newValue | ? | ? | |||||
attrName | ? | ? | |||||
attrChange | ? | ? | |||||
initMutationEvent | ? | ? | |||||
Events for interface MutationEvent | |||||||
DOM2 | DOMSubtreeModified | 5.0[t 7] | No | 1.9 | Yes | Partial | No |
DOMNodeInserted | 1.0 | No | 1.0 | ||||
DOMNodeRemoved | |||||||
DOMNodeRemovedFromDocument | No[g 11] | ||||||
DOMNodeInsertedIntoDocument | Yes | ||||||
DOMAttrModified | 1.0 | No | No | ||||
DOMCharacterDataModified | Yes | ||||||
Events for HTML | |||||||
DOM2 | load | 4.0 | Yes | 1.0 | ? | ? | 2.0 |
unload | ? | ? | |||||
abort | ? | ? | No | ||||
error | ? | ? | 2.0 | ||||
select | ? | ? | |||||
change | ? | ? | |||||
submit | ? | ? | |||||
reset | ? | ? | |||||
focus | ? | ? | |||||
blur | ? | ? | |||||
resize | ? | ? | |||||
scroll | ? | ? |
Trident Events notes
- button — Does not use W3C values.
Tasman Events notes
- button — Does not use W3C values.
Gecko Events notes
- target — Return text node, if any, of the target element node prior to 1.3.
- timeStamp — Is relative to the system start instead of to 1 January 1970.[g 12]
WebKit Events notes
- target — Return text node, if any, of the target element node (fixed in v73, but reverted in v85).
- clientX, clientY — Treated as
pageX
andpageY
. - button — Does not use W3C values.
KHTML Events notes
- DOMSubtreeModified — Not triggered when an element is removed from the subtree.
Presto Events notes
- button — Does not use W3C values prior to 8.0.
Views
The interfaces found within this section are not mandatory. A document may have one or more "views" associated with it, e.g., a computed view on a document after applying a CSS stylesheet, or multiple presentations (e.g. HTML frame) of the same document in a client. That is, a view is some alternate representation of, or a presentation of, and associated with, a source document.
Trident | Tasman | Gecko | WebKit | KHTML | Presto | ||
---|---|---|---|---|---|---|---|
Interface AbstractView | |||||||
DOM2 | document | 6.0 | ? | 1.0 | ? | ? | 1.0 |
Interface DocumentView | |||||||
DOM2 | defaultView | No | ? | 1.0 | ? | ? | 1.0 |
Trident notes
- defaultView — Trident does not support the defaultView property for documents, but it supports another property with the same meaning which is parentWindow.
Traversal
The interfaces found within this section are not mandatory. Its interfaces provide easy-to-use, robust, selective traversal of a document's contents.
Trident | Tasman | Gecko | WebKit | KHTML | Presto | ||
---|---|---|---|---|---|---|---|
Interface NodeIterator | |||||||
DOM2 | root | No | ? | 1.9.1 | ? | ? | 1.0 |
whatToShow | ? | ? | ? | ||||
filter | ? | ? | ? | ||||
expandEntityReferences | ? | ? | ? | ||||
nextNode() | Yes | ? | ? | ? | 2.0 | ||
previousNode() | ? | ? | ? | ||||
detach() | No | ? | ? | ? | 1.0 | ||
Interface NodeFilter | |||||||
DOM2 | acceptNode() | No | ? | 1.0 | ? | ? | 1.0 |
Interface TreeWalker | |||||||
DOM2 | root | No | ? | 1.0 | ? | ? | 1.0 |
whatToShow | ? | ? | ? | ||||
filter | ? | ? | ? | ||||
expandEntityReferences | ? | ? | ? | ||||
currentNode | ? | ? | ? | ||||
parentNode() | ? | ? | ? | ||||
firstChild() | ? | ? | ? | ||||
lastChild() | ? | ? | ? | ||||
previousSibling() | ? | ? | ? | ||||
nextSibling() | ? | ? | ? | ||||
previousNode() | ? | ? | ? | ||||
nextNode() | ? | ? | ? | ||||
Interface DocumentTraversal | |||||||
DOM2 | createNodeIterator() | No | ? | 1.9.1 | ? | ? | 1.0 |
createTreeWalker() | ? | 1.0 | ? | ? |
Range
The interfaces found within this section are not mandatory. It includes methods for creating and moving a Range and methods for manipulating content with Ranges.
Trident | Tasman | Gecko | WebKit | KHTML | Presto | ||
---|---|---|---|---|---|---|---|
Interface Range | |||||||
DOM2 | startContainer | No | ? | 1.0 | Yes | ? | 1.0 |
startOffset | ? | ? | |||||
endContainer | ? | ? | |||||
endOffset | ? | ? | |||||
collapsed | ? | ? | |||||
commonAncestorContainer | ? | ? | |||||
setStart() | ? | ? | |||||
setEnd() | ? | ? | |||||
setStartBefore() | ? | ? | |||||
setStartAfter() | ? | ? | |||||
setEndBefore() | ? | ? | |||||
setEndAfter() | ? | ? | |||||
collapse() | ? | ? | |||||
selectNode() | ? | ? | |||||
selectNodeContents() | ? | ? | |||||
compareBoundaryPoints() | ? | ? | |||||
deleteContents() | ? | ? | |||||
extractContents() | ? | ? | |||||
cloneContents() | ? | ? | |||||
insertNode() | ? | ? | |||||
surroundContents() | ? | ? | |||||
cloneRange() | ? | ? | |||||
toString() | ? | ? | |||||
detach() | ? | ? | |||||
Interface DocumentRange | |||||||
DOM2 | createRange() | No | ? | 1.0 | No | ? | 1.0 |
Exception RangeException | |||||||
DOM2 | code | No | ? | 1.0 | Yes | ? | 1.0 |
Load and Save
The interfaces within this section are considered fundamental, and must be fully implemented by all conforming implementations of the DOM Load and Save module.
Trident | Tasman | Gecko | WebKit | KHTML | Presto | ||
---|---|---|---|---|---|---|---|
Exception LSException | |||||||
DOM3 | code | No | No | No[g 13] | No | No | 1.0 |
Interface DOMImplementationLS | |||||||
DOM3 | createLSParser() | No | No | No | No | No | 1.0 |
createLSSerializer() | |||||||
createLSInput() | |||||||
createLSOutput() | |||||||
Interface LSParser | |||||||
DOM3 | domConfig | No | No | No | No | No | 1.0 |
filter | |||||||
async | |||||||
busy | |||||||
parse() | |||||||
parseURI() | |||||||
parseWithContext() | |||||||
abort() | |||||||
Interface LSInput | |||||||
DOM3 | characterStream | No | No | No | No | No | 1.0 |
byteStream | |||||||
stringData | |||||||
systemId | |||||||
publicId | |||||||
baseURI | |||||||
encoding | |||||||
certifiedText | |||||||
Interface LSResourceResolver | |||||||
DOM3 | resolveResource() | No | No | No | No | No | No |
Interface LSParserFilter | |||||||
DOM3 | whatToShow | No | No | No | No | No | No |
startElement() | 2.0 | ||||||
acceptNode() | |||||||
Interface LSProgressEvent | |||||||
DOM3 | input | No | No | No | No | No | No |
position | |||||||
totalSize | |||||||
Interface LSLoadEvent | |||||||
DOM3 | newDocument | No | No | No | No | No | 2.0 |
input | No | ||||||
Interface LSSerializer | |||||||
DOM3 | domConfig | No | No | No | No | No | 1.0 |
newLine | |||||||
filter | |||||||
write() | |||||||
writeToURI() | |||||||
writeToString() | |||||||
Interface LSOutput | |||||||
DOM3 | characterStream | No | No | No | No | No | 1.0 |
byteStream | |||||||
systemId | |||||||
encoding | |||||||
Interface LSSerializerFilter | |||||||
DOM3 | whatToShow | No | No | No | No | No | No |
Validation
The interfaces found within this section are not mandatory. This module provides interfaces to guide construction and editing of XML documents. Examples of such guided editing are queries like those that combine questions like "what does the schema allow me to insert/delete here" and "if I insert/delete here, will the document still be valid."
Trident | Tasman | Gecko | WebKit | KHTML | Presto | ||
---|---|---|---|---|---|---|---|
Exception ExceptionVAL | |||||||
DOM3 | code | No | No | No | No | No | No |
Interface DocumentEditVAL | |||||||
DOM3 | continuousValidityChecking | No | No | No | No | No | No |
domConfig | |||||||
getDefinedElements() | |||||||
validateDocument() | |||||||
Interface NodeEditVAL | |||||||
DOM3 | defaultValue | No | No | No | No | No | No |
enumeratedValues | |||||||
canInsertBefore() | |||||||
canRemoveChild() | |||||||
canReplaceChild() | |||||||
canAppendChild() | |||||||
nodeValidity() | |||||||
Interface ElementEditVAL | |||||||
DOM3 | allowedChildren | No | No | No | No | No | No |
allowedFirstChildren | |||||||
allowedParents | |||||||
allowedNextSiblings | |||||||
allowedPreviousSiblings | |||||||
allowedAttributes | |||||||
requiredAttributes | |||||||
contentType | |||||||
canSetTextContent | |||||||
canSetAttribute | |||||||
canSetAttributeNode | |||||||
canSetAttributeNS | |||||||
canRemoveAttribute | |||||||
canRemoveAttributeNS | |||||||
canRemoveAttributeNode | |||||||
isElementDefined | |||||||
isElementDefinedNS | |||||||
Interface CharacterDataEditVAL | |||||||
DOM3 | isWhitespaceOnly() | No | No | No | No | No | No |
canSetData() | |||||||
canAppendData() | |||||||
canReplaceData() | |||||||
canInsertData() | |||||||
canDeleteData() |
References
Trident references
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ 3.00 3.01 3.02 3.03 3.04 3.05 3.06 3.07 3.08 3.09 3.10 3.11 3.12 3.13 Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ 5.0 5.1 Lua error in package.lua at line 80: module 'strict' not found.
- ↑ http://ie.microsoft.com/testdrive/HTML5/50ComparingEventModels/Default.html
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
Gecko references
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ 6.0 6.1 Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ 10.0 10.1 Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
Webkit references
Presto references
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
Other references
- ↑ Amaya Binary Releases, Most recent download link in stable
- ↑ Change log between EdgeHTML 12.10240 and 13.10586
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Download for kdelibs, Most recent download link in stable
- Lua error in package.lua at line 80: module 'strict' not found.
- Lua error in package.lua at line 80: module 'strict' not found.
- Lua error in package.lua at line 80: module 'strict' not found.
- Lua error in package.lua at line 80: module 'strict' not found.
- Lua error in package.lua at line 80: module 'strict' not found.
- Lua error in package.lua at line 80: module 'strict' not found.
- Lua error in package.lua at line 80: module 'strict' not found.
- Lua error in package.lua at line 80: module 'strict' not found.
- Lua error in package.lua at line 80: module 'strict' not found.