HTMLElement

 

The HTMLElement interface represents any HTML element. Some elements directly implement this interface, others implement it via an interface that inherits it.

Properties

Inherits properties from its parent, Element, and implements those from GlobalEventHandlers and TouchEventHandlers.

HTMLElement.accessKey (en-US)
Is a DOMString representing the access key assigned to the element.
HTMLElement.accessKeyLabel (en-US) Read only
Returns a DOMString containing the element's assigned access key.
HTMLElement.contentEditable (en-US)
Is a DOMString, where a value of "true" means the element is editable and a value of "false" means it isn't.
HTMLElement.isContentEditable (en-US) Read only
Returns a Boolean (en-US) that indicates whether or not the content of the element can be edited.
HTMLElement.contextMenu (en-US)
Is a HTMLMenuElement (en-US) representing the contextual menu associated with the element. It may be null.
HTMLElement.dataset (en-US) Read only
Returns a DOMStringMap (en-US) with which script can read and write the element's custom data attributes (data-*) .
HTMLElement.dir (en-US)
Is a DOMString, reflecting the dir global attribute, representing the directionality of the element. Possible values are "ltr", "rtl", and "auto".
HTMLElement.draggable
Is a Boolean indicating if the element can be dragged.
HTMLElement.dropzone Read only
Returns a DOMSettableTokenList reflecting the dropzone global attribute and describing the behavior of the element regarding a drop operation.
HTMLElement.hidden (en-US)
Is a Boolean indicating if the element is hidden or not.
HTMLElement.itemScope This is an experimental API that should not be used in production code.
Is a Boolean representing the item scope.
HTMLElement.itemType Read only This is an experimental API that should not be used in production code.
Returns a DOMSettableTokenList
HTMLElement.itemId This is an experimental API that should not be used in production code.
Is a DOMString representing the item ID.
HTMLElement.itemRef Read only This is an experimental API that should not be used in production code.
Returns a DOMSettableTokenList
HTMLElement.itemProp Read only This is an experimental API that should not be used in production code.
Returns a DOMSettableTokenList
HTMLElement.itemValue This is an experimental API that should not be used in production code.
Returns a Object representing the item value.
HTMLElement.lang (en-US)
Is a DOMString representing the language of an element's attributes, text, and element contents.
HTMLElement.noModule
Is a Boolean indicating wether an import script can be executed in user agents that support module scripts.
HTMLElement.offsetHeight (en-US) Read only This is an experimental API that should not be used in production code.
Returns a double containing the height of an element, relative to the layout.
HTMLElement.offsetLeft (en-US)Read only This is an experimental API that should not be used in production code.
Returns a double, the distance from this element's left border to its offsetParent's left border.
HTMLElement.offsetParent (en-US)Read only This is an experimental API that should not be used in production code.
Returns a Element that is the element from which all offset calculations are currently computed.
HTMLElement.offsetTopRead only This is an experimental API that should not be used in production code.
Returns a double, the distance from this element's top border to its offsetParent's top border.
HTMLElement.offsetWidth (en-US)Read only This is an experimental API that should not be used in production code.
Returns a double containing the width of an element, relative to the layout.
HTMLElement.properties Read only This is an experimental API that should not be used in production code.
Returns a HTMLPropertiesCollection
HTMLElement.spellcheck
Is a Boolean that controls spell-checking. It is present on all HTML elements, though it doesn't have an effect on all of them.
HTMLElement.style (en-US)
Is a CSSStyleDeclaration (en-US), an object representing the declarations of an element's style attributes.
HTMLElement.tabIndex (en-US)
Is a long representing the position of the element in the tabbing order.
HTMLElement.title (en-US)
Is a DOMString containing the text that appears in a popup box when mouse is over the element.
HTMLElement.translate This is an experimental API that should not be used in production code.
Is a Boolean representing the translation.

Event handlers

Most event handler properties, of the form onXYZ, are defined on the GlobalEventHandlers or TouchEventHandlers interfaces and implemented by HTMLElement. In addition, the following handlers are specific to HTMLElement.

HTMLElement.oncopy (en-US)  This API has not been standardized.
Returns the event handling code for the copy event (bug 280959).
HTMLElement.oncut (en-US)  This API has not been standardized.
Returns the event handling code for the cut event (bug 280959).
HTMLElement.onpaste (en-US) This API has not been standardized.
Returns the event handling code for the paste event (bug 280959).
TouchEventHandlers.ontouchstart This API has not been standardized.
Returns the event handling code for the touchstart (en-US) event.
TouchEventHandlers.ontouchend This API has not been standardized.
Returns the event handling code for the touchend (en-US) event.
TouchEventHandlers.ontouchmove This API has not been standardized.
Returns the event handling code for the touchmove (en-US) event.
TouchEventHandlers.ontouchenter This API has not been standardized.
Returns the event handling code for the touchenter event.
TouchEventHandlers.ontouchleave This API has not been standardized.
Returns the event handling code for the touchleave event.
TouchEventHandlers.ontouchcancel This API has not been standardized.
Returns the event handling code for the touchcancel (en-US) event.

Methods

Inherits methods from its parent, Element.

HTMLElement.blur() (en-US)
Removes keyboard focus from the currently focused element.
HTMLElement.click() (en-US)
Sends a mouse click event to the element.
HTMLElement.focus() (en-US)
Makes the element the current keyboard focus.
HTMLElement.forceSpellCheck() (en-US) This is an experimental API that should not be used in production code.
Runs the spell checker on the element's contents.

Specifications

Specification Status Comment
CSS Object Model (CSSOM) View Module
The definition of 'HTMLElement' in that specification.
Working Draft Added the following properties: offsetParent, offsetTop, offsetLeft, offsetWidth, and offsetHeight.
HTML Living Standard
The definition of 'HTMLElement' in that specification.
Living Standard Added the following properties: translate, itemScope, itemType, itemId, itemRef, itemProp, properties, and itemValue.
Added the following method: forceSpellcheck().
Moved the onXYZ attributes to the GlobalEventHandlers interface and added an inheritance from it.
HTML5
The definition of 'HTMLElement' in that specification.
Recommendation Added the following properties: dataset, hidden, tabindex, accessKey, accessKeyLabel, draggable, dropzone, contentEditable, isContentEditable, contextMenu, spellcheck, commandType, commandLabel, commandIcon, commandHidden, commandDisabled, commandChecked, style, and all the onXYZ properties.
Moved the id and className properties to the Element interface.
Document Object Model (DOM) Level 2 HTML Specification
The definition of 'HTMLElement' in that specification.
Obsolete No change from Document Object Model (DOM) Level 2 HTML Specification
Document Object Model (DOM) Level 1 Specification
The definition of 'HTMLElement' in that specification.
Obsolete Initial definition.

Browser compatibility

We're converting our compatibility data into a machine-readable JSON format. This compatibility table still uses the old format, because we haven't yet converted the data it contains. Find out how you can help! (en-US)

Feature Firefox (Gecko) Chrome Edge Internet Explorer Opera Safari
Basic support 1.0 (1.7 or earlier) ? (Yes) ? ? ?
accessKey (en-US) 5.0 (5.0) 17 (Yes) ? ? 6.0
accessKeyLabel (en-US) 8.0 (8.0) ? No support ? ? No supportWebKit bug 72715
blur() (en-US) 5.0 (5.0) ? (Yes) 9 ? ?
click() (en-US) 5.0 (5.0) 9 (Yes) 9 ? 6.0
dataset (en-US) 6.0 (6.0) 8 (Yes) 11 11.10 5.1
focus() (en-US) 5.0 (5.0) ? (Yes) 9 ? ?
contentEditable (en-US) 3.0 (1.9) (Yes) (Yes) 5.5 9 (Yes)
spellcheck 2.0 (1.8.1) ? (Yes) ? ? ?
style (en-US) (Yes) (returns a CSS2Properties, rather than a CSSStyleDeclaration (en-US)) (Yes) (Yes) (Yes) (Yes) (Yes)
forceSpellCheck() (en-US) This is an experimental API that should not be used in production code. No support No support No support No support No support No support
draggable (Yes) ? (Yes) ? 12.0 ?
dropzone No support No support No support No support 12.0 No support
offsetLeft (en-US), offsetTop, offsetParent (en-US), offsetHeight (en-US) and offsetWidth (en-US) This is an experimental API that should not be used in production code. (Yes) ? (Yes) (Yes) ? ?
HTMLElement.onModule ? 60 ? ? 47 ?
translate This is an experimental API that should not be used in production code. No support No support No support No support No support No support
itemScope, itemType, itemRef, itemId, itemProp, and itemValue This is an experimental API that should not be used in production code. 6.0 (6.0) No support No support No support 11.60
(Removed in Opera 15)
No support
properties This is an experimental API that should not be used in production code. (Yes) ? No support ? ? ?
HTMLElement.ontouchstart, HTMLElement.ontouchend, HTMLElement.ontouchmove, HTMLElement.ontouchenter, HTMLElement.ontouchleave, and HTMLElement.ontouchcancel (Yes) (Yes) No support No support ? (Yes)
HTMLElement.oncopy (en-US), HTMLElement.oncut (en-US), and HTMLElement.onpaste (en-US) This API has not been standardized. 3.0 (1.9) ? (Yes) ? ? ?
Feature Firefox Mobile (Gecko) Android Webview Chrome for Android Edge IE Mobile Opera Mobile Safari Mobile
Basic support

1.0 (1.0)

(Yes) (Yes) (Yes) ? ? ?
accessKey (en-US) 5.0 (5.0) ? ? (Yes) ? ? ?
accessKeyLabel (en-US) 8.0 (8.0) ? ? No support ? ? ?
blur() (en-US) 5.0 (5.0) ? ? (Yes) ? ? ?
click() (en-US) 5.0 (5.0) ? ? (Yes) ? ? ?
dataset (en-US) 6.0 (6.0) ? ? (Yes) ? ? ?
focus() (en-US) 5.0 (5.0) ? ? (Yes) ? ? ?
onModule() ? 60 60 ? ? 47 ?
HTMLElement.oncopy (en-US), HTMLElement.oncut (en-US), and HTMLElement.onpaste (en-US) This API has not been standardized. 1.0 (1.9) ? ? (Yes) ? ? ?

See also