AwaitedDOM/ HTMLCanvasElement

The HTMLCanvasElement interface provides properties and methods for manipulating the layout and presentation of <canvas> elements. The HTMLCanvasElement interface also inherits the properties and methods of the HTMLElement interface.

Properties

elem.height
W3C

Is a positive integer reflecting the height HTML attribute of the <canvas> element interpreted in CSS pixels. When the attribute is not specified, or if it is set to an invalid value, like a negative, the default value of 150 is used.

Type: Promise<number>

elem.width
W3C

Is a positive integer reflecting the width HTML attribute of the <canvas> element interpreted in CSS pixels. When the attribute is not specified, or if it is set to an invalid value, like a negative, the default value of 300 is used.

Type: Promise<number>

elem.accessKey
W3C

Is a string representing the access key assigned to the element.

Type: Promise<string>

elem.autoCapitalize
W3C

Needs content.

Type: Promise<string>

elem.dir
W3C

Is a string, reflecting the dir global attribute, representing the directionality of the element. Possible values are "ltr", "rtl", and "auto".

Type: Promise<string>

elem.draggable
W3C

Is a boolean indicating if the element can be dragged.

Type: Promise<boolean>

elem.hidden
W3C

Is a boolean indicating if the element is hidden or not.

Type: Promise<boolean>

elem.inert
W3C

Is a boolean indicating whether the user agent must act as though the given node is absent for the purposes of user interaction events, in-page text searches ("find in page"), and text selection.

Type: Promise<boolean>

elem.innerText
W3C

Represents the "rendered" text content of a node and its descendants. As a getter, it approximates the text the user would get if they highlighted the contents of the element with the cursor and then copied it to the clipboard.

Type: Promise<string>

elem.lang
W3C

Is a string representing the language of an element's attributes, text, and element contents.

Type: Promise<string>

elem.offsetHeight
W3C

Returns a double containing the height of an element, relative to the layout.

Type: Promise<number>

elem.offsetLeft
W3C

Returns a double, the distance from this element's left border to its offsetParent's left border.

Type: Promise<number>

elem.offsetParent
W3C

Returns a Element that is the element from which all offset calculations are currently computed.

Type: SuperElement

elem.offsetTop
W3C

Returns a double, the distance from this element's top border to its offsetParent's top border.

Type: Promise<number>

elem.offsetWidth
W3C

Returns a double containing the width of an element, relative to the layout.

Type: Promise<number>

elem.spellcheck
W3C

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.

Type: Promise<boolean>

elem.title
W3C

Is a string containing the text that appears in a popup box when mouse is over the element.

Type: Promise<string>

elem.translate
W3C

Is a boolean representing the translation.

Type: Promise<boolean>

elem.attributes
W3C

Returns a NamedNodeMap object containing the assigned attributes of the corresponding HTML element.

Type: NamedNodeMap

elem.classList
W3C

Returns a DOMTokenList containing the list of class attributes.

Type: DOMTokenList

elem.className
W3C

Is a string representing the class of the element.

Type: Promise<string>

elem.clientHeight
W3C

Returns a number representing the inner height of the element.

Type: Promise<number>

elem.clientLeft
W3C

Returns a number representing the width of the left border of the element.

Type: Promise<number>

elem.clientTop
W3C

Returns a number representing the width of the top border of the element.

Type: Promise<number>

elem.clientWidth
W3C

Returns a number representing the inner width of the element.

Type: Promise<number>

elem.id
W3C

Is a string representing the id of the element.

Type: Promise<string>

elem.innerHTML
W3C

Is a string representing the markup of the element's content.

Type: Promise<string>

elem.localName
W3C

A string representing the local part of the qualified name of the element.

Type: Promise<string>

elem.namespaceURI
W3C

The namespace URI of the element, or null if it is no namespace.

Note: In Firefox 3.5 and earlier, HTML elements are in no namespace. In later versions, HTML elements are in the http://www.w3.org/1999/xhtml namespace in both HTML and XML trees.

Type: Promise<string>

elem.outerHTML
W3C

Is a string representing the markup of the element including its content. When used as a setter, replaces the element with nodes parsed from the given string.

Type: Promise<string>

elem.part
W3C

Represents the part identifier(s) of the element (i.e. set using the part attribute), returned as a DOMTokenList.

Type: DOMTokenList

elem.prefix
W3C

A string representing the namespace prefix of the element, or null if no prefix is specified.

Type: Promise<string>

elem.scrollHeight
W3C

Returns a number representing the scroll view height of an element.

Type: Promise<number>

elem.scrollLeft
W3C

Is a number representing the left scroll offset of the element.

Type: Promise<number>

elem.scrollTop
W3C

A number representing number of pixels the top of the document is scrolled vertically.

Type: Promise<number>

elem.scrollWidth
W3C

Returns a number representing the scroll view width of the element.

Type: Promise<number>

elem.shadowRoot
W3C

Returns the open shadow root that is hosted by the element, or null if no open shadow root is present.

Type: ShadowRoot

elem.slot
W3C

Returns the name of the shadow DOM slot the element is inserted in.

Type: Promise<string>

elem.tagName
W3C

Returns a String with the name of the tag for the given element.

Type: Promise<string>

elem.baseURI
W3C

Returns a string representing the base URL of the document containing the Node.

Type: Promise<string>

elem.childNodes
W3C

Returns a live NodeList containing all the children of this node. NodeList being live means that if the children of the Node change, the NodeList object is automatically updated.

Type: SuperNodeList

elem.firstChild
W3C

Returns a Node representing the first direct child node of the node, or null if the node has no child.

Type: SuperNode

elem.isConnected
W3C

A boolean indicating whether or not the Node is connected (directly or indirectly) to the context object, e.g. the Document object in the case of the normal DOM, or the ShadowRoot in the case of a shadow DOM.

Type: Promise<boolean>

elem.lastChild
W3C

Returns a Node representing the last direct child node of the node, or null if the node has no child.

Type: SuperNode

elem.nextSibling
W3C

Returns a Node representing the next node in the tree, or null if there isn't such node.

Type: SuperNode

elem.nodeName
W3C

Returns a string containing the name of the Node. The structure of the name will differ with the node type. E.g. An HTMLElement will contain the name of the corresponding tag, like 'audio' for an HTMLAudioElement, a Text node will have the '#text' string, or a Document node will have the '#document' string.

Type: Promise<string>

elem.nodeType
W3C

Returns an unsigned short representing the type of the node. Possible values are:

NameValue
ELEMENT_NODE1
ATTRIBUTE_NODE 2
TEXT_NODE3
CDATA_SECTION_NODE4
ENTITY_REFERENCE_NODE 5
ENTITY_NODE 6
PROCESSING_INSTRUCTION_NODE7
COMMENT_NODE8
DOCUMENT_NODE9
DOCUMENT_TYPE_NODE10
DOCUMENT_FRAGMENT_NODE11
NOTATION_NODE 12

Type: Promise<number>

elem.nodeValue
W3C

Returns / Sets the value of the current node.

Type: Promise<string>

elem.ownerDocument
W3C

Returns the Document that this node belongs to. If the node is itself a document, returns null.

Type: SuperDocument

elem.parentElement
W3C

Returns an Element that is the parent of this node. If the node has no parent, or if that parent is not an Element, this property returns null.

Type: SuperElement

elem.parentNode
W3C

Returns a Node that is the parent of this node. If there is no such node, like if this node is the top of the tree or if doesn't participate in a tree, this property returns null.

Type: SuperNode

elem.previousSibling
W3C

Returns a Node representing the previous node in the tree, or null if there isn't such node.

Type: SuperNode

elem.textContent
W3C

Returns / Sets the textual content of an element and all its descendants.

Type: Promise<string>

elem.style
W3C

The style property is used to get as well as set the inline style of an element. When getting, it returns a CSSStyleDeclaration object that contains a list of all styles properties for that element with values assigned for the attributes that are defined in the element's inline style attribute.

Type: CSSStyleDeclaration

elem.contentEditable
W3C

Needs content.

Type: Promise<string>

elem.isContentEditable
W3C

Needs content.

Type: Promise<boolean>

elem.dataset
W3C

Needs content.

Type: Promise<Record<string, string>>

elem.nonce
W3C

Needs content.

Type: Promise<string>

elem.tabIndex
W3C

Needs content.

Type: Promise<number>

elem.nextElementSibling
W3C

Returns the Element immediately following this node in its parent's children list, or null if there is no Element in the list following this node.

Type: SuperElement

elem.previousElementSibling
W3C

Returns the Element immediately prior to this node in its parent's children list, or null if there is no Element in the list prior to this node.

Type: SuperElement

elem.childElementCount
W3C

Returns the number of children of this ParentNode which are elements.

Type: Promise<number>

elem.children
W3C

Returns a live HTMLCollection containing all of the Element objects that are children of this ParentNode, omitting all of its non-element nodes.

Type: SuperHTMLCollection

elem.firstElementChild
W3C

Returns the first node which is both a child of this ParentNodeand is also an Element, or null if there is none.

Type: SuperElement

elem.lastElementChild
W3C

Returns the last node which is both a child of this ParentNodeand is an Element, or null if there is none.

Type: SuperElement

elem.assignedSlot
W3C

Returns the <slot> the node is inserted in.

Type: HTMLSlotElement

Methods

elem.captureStream(frameRequestRate?)
W3C

Returns a CanvasCaptureMediaStream that is a real-time video capture of the surface of the canvas.

Arguments:

  • frameRequestRate number. A double-precision floating-point value that indicates the rate of capture of each frame. If not set, a new frame will be captured each time the canvas changes; if set to 0, frames will not be captured automatically; instead, they will only be captured when the returned track's requestFrame() method is called.

Returns: MediaStream

elem.toDataURL(type?, quality?)
W3C

Returns a data-URL containing a representation of the image in the format specified by the type parameter (defaults to png). The returned image is in a resolution of 96dpi.

Arguments:

  • type string. A string indicating the image format. The default format type is image/png.
  • quality any. A number between 0 and 1 indicating the image quality to use for image formats that use lossy compression such as image/jpeg and image/webp.
    If this argument is anything else, the default value for image quality is used. The default value is 0.92. Other arguments are ignored.

Returns: Promise<string>

elem.transferControlToOffscreen()
W3C

Transfers control to an OffscreenCanvas object, either on the main thread or on a worker.

Returns: OffscreenCanvas

elem.click()
W3C

Sends a mouse click event to the element.

Returns: Promise<void>

elem.closest(selectors)
W3C

Returns the Element which is the closest ancestor of the current element (or the current element itself) which matches the selectors given in parameter.

Arguments:

  • selectors string. selectors is a string containing a selector list.
    ex: p:hover, .toto + q

Returns: SuperElement

elem.getAttribute(qualifiedName)
W3C

Retrieves the value of the named attribute from the current node and returns it as an Object.

Arguments:

  • qualifiedName string. attributeName is the name of the attribute whose value you want to get.

Returns: Promise<string>

elem.getAttributeNames()
W3C

Returns an array of attribute names from the current element.

Returns: Promise<Iterable,string>

elem.getAttributeNode(qualifiedName)
W3C

Retrieves the node representation of the named attribute from the current node and returns it as an Attr.

Arguments:

  • qualifiedName string. attrName is a string containing the name of the attribute.

Returns: Promise<Attr>

elem.getAttributeNodeNS(namespace, localName)
W3C

Retrieves the node representation of the attribute with the specified name and namespace, from the current node and returns it as an Attr.

Arguments:

  • namespace string. namespace is a string specifying the namespace of the attribute.
  • localName string. nodeName is a string specifying the name of the attribute.

Returns: Promise<Attr>

elem.getAttributeNS(namespace, localName)
W3C

Retrieves the value of the attribute with the specified name and namespace, from the current node and returns it as an Object.

Arguments:

  • namespace string. The namespace in which to look for the specified attribute.
  • localName string. The name of the attribute to look for.

Returns: Promise<string>

elem.getBoundingClientRect()
W3C

Returns the size of an element and its position relative to the viewport.

Returns: Promise<DOMRect>

elem.getClientRects()
W3C

Returns a collection of rectangles that indicate the bounding rectangles for each line of text in a client.

Returns: Promise<DOMRectList>

elem.getElementsByClassName(classNames)
W3C

Returns a live HTMLCollection that contains all descendants of the current element that possess the list of classes given in the parameter.

Arguments:

  • classNames string. A string containing one or more class names to match on, separated by whitespace.

Returns: SuperHTMLCollection

elem.getElementsByTagName(qualifiedName)
W3C

Returns a live HTMLCollection containing all descendant elements, of a particular tag name, from the current element.

Arguments:

  • qualifiedName string. tagName is the qualified name to look for. The special string "*" represents all elements. For compatibility with XHTML, lower-case should be used.

Returns: SuperHTMLCollection

elem.getElementsByTagNameNS(namespace, localName)
W3C

Returns a live HTMLCollection containing all descendant elements, of a particular tag name and namespace, from the current element.

Arguments:

  • namespace string. namespaceURI is the namespace URI of elements to look for (see Element.namespaceURI and Attr.namespaceURI). For example, if you need to look for XHTML elements, use the XHTML namespace URI, http://www.w3.org/1999/xhtml.
  • localName string. localName is either the local name of elements to look for or the special value "*", which matches all elements (see Element.localName and Attr.localName).

Returns: SuperHTMLCollection

elem.hasAttribute(qualifiedName)
W3C

Returns a boolean indicating if the element has the specified attribute or not.

Arguments:

  • qualifiedName string. is a string representing the name of the attribute.

Returns: Promise<boolean>

elem.hasAttributeNS(namespace, localName)
W3C

Returns a boolean indicating if the element has the specified attribute, in the specified namespace, or not.

Arguments:

  • namespace string. namespace is a string specifying the namespace of the attribute.
  • localName string. localName is the name of the attribute.

Returns: Promise<boolean>

elem.hasAttributes()
W3C

Returns a boolean indicating if the element has one or more HTML attributes present.

Returns: Promise<boolean>

elem.hasPointerCapture(pointerId)
W3C

Indicates whether the element on which it is invoked has pointer capture for the pointer identified by the given pointer ID.

Arguments:

  • pointerId number. The pointerId of a PointerEvent object.

Returns: Promise<boolean>

elem.matches(selectors)
W3C

Returns a boolean indicating whether or not the element would be selected by the specified selector string.

Arguments:

  • selectors string. selectorString is a string representing the selector to test.

Returns: Promise<boolean>

elem.requestFullscreen(options?)
W3C

Asynchronously asks the browser to make the element full-screen.

Arguments:

  • options FullscreenOptions. A FullscreenOptions object  providing options that control the behavior of the transition to full-screen mode. Currently, the only option is navigationUI, which controls whether or not to show navigation UI while the element is in full-screen mode. The default value is "auto", which indicates that the browser should decide what to do.

Returns: Promise<void>

elem.requestPointerLock()
W3C

Allows to asynchronously ask for the pointer to be locked on the given element.

Returns: Promise<void>

elem.scrollIntoView(arg?)
W3C

Scrolls the page until the element gets into the view.

Arguments:

  • arg boolean | ScrollIntoViewOptions
    • Is a boolean value:
      • If true, the top of the element will be aligned to the top of the visible area of the scrollable ancestor. Corresponds to scrollIntoViewOptions: {block: "start", inline: "nearest"}. This is the default value.
      • If false, the bottom of the element will be aligned to the bottom of the visible area of the scrollable ancestor. Corresponds to scrollIntoViewOptions: {block: "end", inline: "nearest"}.
    • Is an Object with the following properties:
      behaviorOptional
      Defines the transition animation.
      One of auto or smooth. Defaults to auto.
      blockOptional
      Defines vertical alignment.
      One of start, center, end, or nearest. Defaults to start.
      inlineOptional
      Defines horizontal alignment.
      One of start, center, end, or nearest. Defaults to nearest.

Returns: Promise<void>

elem.compareDocumentPosition(other)
W3C

Compares the position of the current node against another node in any other document.

Arguments:

  • other Node. The other Node with which to compare the first node’s document position.

Returns: Promise<number>

elem.contains(other)
W3C

Returns a boolean value indicating whether or not a node is a descendant of the calling node.

Arguments:

  • other Node. Needs content.

Returns: Promise<boolean>

elem.getRootNode(options?)
W3C

Returns the context object's root which optionally includes the shadow root if it is available. 

Arguments:

  • options GetRootNodeOptions. An object that sets options for getting the root node. The available options are:
    • composed: A `boolean` that indicates whether the shadow root should be returned (false, the default), or a root node beyond shadow root (true).

Returns: SuperNode

elem.hasChildNodes()
W3C

Returns a boolean indicating whether or not the element has any child nodes.

Returns: Promise<boolean>

elem.isDefaultNamespace(namespace)
W3C

Accepts a namespace URI as an argument and returns a boolean with a value of true if the namespace is the default namespace on the given node or false if not.

Arguments:

  • namespace string. namespaceURI is a string representing the namespace against which the element will be checked.

Returns: Promise<boolean>

elem.isEqualNode(otherNode)
W3C

Returns a boolean which indicates whether or not two nodes are of the same type and all their defining data points match.

Arguments:

  • otherNode Node. otherNode: The Node to compare equality with.

Returns: Promise<boolean>

elem.isSameNode(otherNode)
W3C

Returns a boolean value indicating whether or not the two nodes are the same (that is, they reference the same object).

Arguments:

  • otherNode Node. otherNode The Node to test against.

Returns: Promise<boolean>

elem.lookupNamespaceURI(prefix)
W3C

Accepts a prefix and returns the namespace URI associated with it on the given node if found (and null if not). Supplying null for the prefix will return the default namespace.

Arguments:

  • prefix string. The prefix to look for. If this parameter is null, the method will return the default namespace URI, if any.

Returns: Promise<string>

elem.lookupPrefix(namespace)
W3C

Returns a string containing the prefix for a given namespace URI, if present, and null if not. When multiple prefixes are possible, the result is implementation-dependent.

Arguments:

  • namespace string. Needs content.

Returns: Promise<string>

elem.normalize()
W3C

Clean up all the text nodes under this element (merge adjacent, remove empty).

Returns: Promise<void>

elem.blur()
W3C

Needs content.

Returns: Promise<void>

elem.focus()
W3C

Needs content.

Returns: Promise<void>

elem.querySelector(selectors)
W3C

Returns the first Element with the current element as root that matches the specified group of selectors.

Arguments:

  • selectors string. A string containing one or more selectors to match against. This string must be a valid compound selector list supported by the browser; if it's not, a SyntaxError exception is thrown. See Locating DOM elements using selectors for more information about using selectors to identify elements. Multiple selectors may be specified by separating them using commas.

Returns: SuperElement

elem.querySelectorAll(selectors)
W3C

Returns a NodeList representing a list of elements with the current element as root that matches the specified group of selectors.

Arguments:

  • selectors string. A string containing one or more selectors to match against. This string must be a valid CSS selector string; if it's not, a SyntaxError exception is thrown. See Locating DOM elements using selectors for more information about using selectors to identify elements. Multiple selectors may be specified by separating them using commas.

Returns: SuperNodeList

Unimplemented Specs

Properties

onfullscreenchangeonfullscreenerror
oncopyoncut
onpasteonabort
onanimationendonanimationiteration
onanimationstartonauxclick
onbluroncancel
oncanplayoncanplaythrough
onchangeonclick
oncloseoncontextmenu
oncuechangeondblclick
ondragondragend
ondragenterondragleave
ondragoverondragstart
ondropondurationchange
onemptiedonended
onerroronfocus
onformdataongotpointercapture
oninputoninvalid
onkeydownonkeypress
onkeyuponload
onloadeddataonloadedmetadata
onloadstartonlostpointercapture
onmousedownonmouseenter
onmouseleaveonmousemove
onmouseoutonmouseover
onmouseuponpause
onplayonplaying
onpointercancelonpointerdown
onpointerenteronpointerleave
onpointermoveonpointerout
onpointeroveronpointerup
onprogressonratechange
onresetonresize
onscrollonseeked
onseekingonselect
onselectionchangeonselectstart
onstalledonsubmit
onsuspendontimeupdate
ontouchcancelontouchend
ontouchmoveontouchstart
ontransitionendonvolumechange
onwaitingonwheel

Methods

getContext()toBlob()
attachShadow()computedStyleMap()
insertAdjacentElement()insertAdjacentHTML()
insertAdjacentText()releasePointerCapture()
removeAttribute()removeAttributeNode()
removeAttributeNS()scroll()
scrollBy()scrollTo()
setAttribute()setAttributeNode()
setAttributeNodeNS()setAttributeNS()
setPointerCapture()toggleAttribute()
appendChild()cloneNode()
insertBefore()removeChild()
replaceChild()addEventListener()
dispatchEvent()removeEventListener()
animate()getAnimations()
after()before()
remove()replaceWith()
append()prepend()

Edit this page on GitHub