bindings/all_bindings
library
Classes
-
AbortController
-
The interface represents a controller object that allows you to
abort one or more Web requests as and when desired.
You can create a new object using the AbortController()
constructor. Communicating with a DOM request is done using an
AbortSignal object.
-
AbortSignal
-
The interface represents a signal object that allows you to
communicate with a DOM request (such as a fetch request) and
abort it if required via an AbortController object.
-
AbsoluteOrientationReadingValues
-
-
AbsoluteOrientationSensor
-
The interface of the Sensor APIs describes the device's physical
orientation in relation to the Earth's reference coordinate
system.
To use this sensor, the user must grant permission to the
'accelerometer'
, 'gyroscope'
, and 'magnetometer'
device
sensors through the Permissions API.
If a feature policy blocks use of a feature it is because your
code is inconsistent with the policies set on your server. This
is not something that would ever be shown to a user. The
Feature-Policy
HTTP header article contains implementation
instructions.
-
AbstractRange
-
The abstract interface is the base class upon which all DOM
range types are defined. A range is an object that indicates the
start and end points of a section of content within the document.
-
AbstractWorker
-
-
Accelerometer
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the Sensor APIs provides on each reading the
acceleration applied to the device along all three axes.
To use this sensor, the user must grant permission to the
'accelerometer'
, device sensor through the Permissions API.
If a feature policy blocks the use of a feature, it is because
your code is inconsistent with the policies set on your server.
This is not something that would ever be shown to a user. The
Feature-Policy
HTTP header article contains implementation
instructions.
-
AccelerometerReadingValues
-
-
AccelerometerSensorOptions
-
-
AddEventListenerOptions
-
-
AesCbcParams
-
The dictionary of the Web Crypto API represents the object that
should be passed as the
algorithm
parameter into
SubtleCrypto.encrypt()
, SubtleCrypto.decrypt()
,
SubtleCrypto.wrapKey()
, or SubtleCrypto.unwrapKey()
, when
using the AES-CBC algorithm.
-
AesCtrParams
-
The dictionary of the Web Crypto API represents the object that
should be passed as the
algorithm
parameter into
SubtleCrypto.encrypt()
, SubtleCrypto.decrypt()
,
SubtleCrypto.wrapKey()
, or SubtleCrypto.unwrapKey()
, when
using the AES-CTR algorithm.
AES is a block cipher, meaning that it splits the message into
blocks and encrypts it a block at a time. In CTR mode, every time
a block of the message is encrypted, an extra block of data is
mixed in. This extra block is called the "counter block".
A given counter block value must never be used more than once
with the same key:
-
AesDerivedKeyParams
-
-
AesGcmParams
-
The dictionary of the Web Crypto API represents the object that
should be passed as the
algorithm
parameter into
SubtleCrypto.encrypt()
, SubtleCrypto.decrypt()
,
SubtleCrypto.wrapKey()
, or SubtleCrypto.unwrapKey()
, when
using the AES-GCM algorithm.
For details of how to supply appropriate values for this
parameter, see the specification for AES-GCM: NIST SP800-38D, in
particular section 5.2.1.1 on Input Data.
-
AesKeyAlgorithm
-
-
AesKeyGenParams
-
The dictionary of the Web Crypto API represents the object that
should be passed as the
algorithm
parameter into
SubtleCrypto.generateKey()
, when generating an AES key: that
is, when the algorithm is identified as any of AES-CBC, AES-CTR,
AES-GCM, or AES-KW.
-
Algorithm
-
-
AllowedBluetoothDevice
-
-
AllowedUSBDevice
-
-
AmbientLightReadingValues
-
-
AmbientLightSensor
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the Sensor APIs returns the current light level
or illuminance of the ambient light around the hosting device.
To use this sensor, the user must grant permission to the
'ambient-light-sensor'
device sensor through the Permissions
API.
If a feature policy blocks use of a feature it is because your
code is inconsistent with the policies set on your server. This
is not something that would ever be shown to a user. The
Feature-Policy
HTTP header article contains implementation
instructions.
-
AnalyserNode
-
The interface represents a node able to provide real-time
frequency and time-domain analysis information. It is an
AudioNode that passes the audio stream unchanged from the input
to the output, but allows you to take the generated data, process
it, and create audio visualizations.
An has exactly one input and one output. The node works even if
the output is not connected.
-
AnalyserOptions
-
-
ANGLEInstancedArrays
-
The extension is part of the WebGL API and allows to draw the
same object, or groups of similar objects multiple times, if they
share the same vertex data, primitive count and type.
WebGL extensions are available using the
WebGLRenderingContext.getExtension()
method. For more
information, see also Using Extensions in the WebGL tutorial.
-
Animatable
-
-
Animation
-
The interface of the Web Animations API represents a single
animation player and provides playback controls and a timeline
for an animation node or source.
-
AnimationEffect
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the Web Animations API defines current and
future animation effects like KeyframeEffect, which can be
passed to Animation objects for playing, and KeyframeEffect
(which is used by CSS Animations and Transitions).
-
AnimationEvent
-
The interface represents events providing information related to
animations.
-
AnimationEventInit
-
-
AnimationFrameProvider
-
-
AnimationNodeList
-
-
AnimationPlaybackEvent
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The AnimationPlaybackEvent interface of the Web Animations API
represents animation events.
As animations play, they report changes to their
playState
through animation events.
-
AnimationPlaybackEventInit
-
-
AnimationTimeline
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the Web Animations API represents the timeline
of an animation. This interface exists to define timeline
features (inherited by DocumentTimeline and future timeline
types) and is not itself directly used by developers. Anywhere
you see , you should use DocumentTimeline or any other timeline
type instead.
-
AnimationWorkletGlobalScope
-
-
ARIAMixin
-
-
AssignedNodesOptions
-
-
Attr
-
The interface represents one of an element's attributes as an
object. In most situations, you will directly retrieve the
attribute value as a string (e.g.,
Element.getAttribute()
), but
certain functions (e.g., Element.getAttributeNode()
) or means
of iterating return instances.
The core idea of an object of type is the association between a
name and a value. An attribute may also be part of a namespace
and, in this case, it also has a URI identifying the namespace,
and a prefix that is an abbreviation for the namespace.
The name is deemed local when it ignores the eventual namespace
prefix and deemed qualified when it includes the prefix of the
namespace, if any, separated from the local name by a colon
(:
). We have three cases: an attribute outside of a namespace,
an attribute inside a namespace without a prefix defined, an
attribute inside a namespace with a prefix:
-
AudioBuffer
-
The interface represents a short audio asset residing in memory,
created from an audio file using the
AudioContext.decodeAudioData()
method, or from raw data using
AudioContext.createBuffer()
. Once put into an AudioBuffer, the
audio can then be played by being passed into an
AudioBufferSourceNode.
Objects of these types are designed to hold small audio
snippets, typically less than 45 s. For longer sounds, objects
implementing the MediaElementAudioSourceNode are more suitable.
The buffer contains data in the following format: non-interleaved
IEEE754 32-bit linear PCM with a nominal range between -1
and
+1
, that is, a 32-bit floating point buffer, with each sample
between -1.0 and 1.0. If the has multiple channels, they are
stored in separate buffers.
-
AudioBufferOptions
-
-
AudioBufferSourceNode
-
The interface is an AudioScheduledSourceNode which represents
an audio source consisting of in-memory audio data, stored in an
AudioBuffer.
This interface is especially useful for playing back audio which
has particularly stringent timing accuracy requirements, such as
for sounds that must match a specific rhythm and can be kept in
memory rather than being played from disk or the network. To play
sounds which require accurate timing but must be streamed from
the network or played from disk, use a AudioWorkletNode to
implement its playback.
-
AudioBufferSourceOptions
-
-
AudioConfiguration
-
The dictionary of the Media Capabilities API defines the audio
file being tested when calling
MediaCapabilities.encodingInfo()
or MediaCapabilities.decodingInfo()
to query whether a specific
audio configuration is supported, smooth, and/or power efficient.
-
AudioContext
-
The interface represents an audio-processing graph built from
audio modules linked together, each represented by an
AudioNode.
An audio context controls both the creation of the nodes it
contains and the execution of the audio processing, or decoding.
You need to create an before you do anything else, as everything
happens inside a context. It's recommended to create one
AudioContext and reuse it instead of initializing a new one each
time, and it's OK to use a single for several different audio
sources and pipeline concurrently.
-
AudioContextOptions
-
-
AudioData
-
The interface of the
WebCodecs API
represents an audio sample.
-
AudioDataCopyToOptions
-
-
AudioDataInit
-
-
AudioDecoder
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the WebCodecs API decodes chunks of audio.
-
AudioDecoderConfig
-
-
AudioDecoderInit
-
-
AudioDecoderSupport
-
-
AudioDestinationNode
-
The interface represents the end destination of an audio graph
in a given context — usually the speakers of your device. It can
also be the node that will "record" the audio data when used with
an OfflineAudioContext.
has no output (as it is the output, no more AudioNode can be
linked after it in the audio graph) and one input. The number of
channels in the input must be between
0
and the
maxChannelCount value or an exception is raised.
The of a given AudioContext can be retrieved using the
AudioContext.destination
property.
-
AudioEncoder
-
The interface of the WebCodecs API encodes AudioData objects.
-
AudioEncoderConfig
-
-
AudioEncoderInit
-
-
AudioEncoderSupport
-
-
AudioListener
-
The interface represents the position and orientation of the
unique person listening to the audio scene, and is used in audio
spatialization. All PannerNodes spatialize in relation to the
stored in the
BaseAudioContext.listener
attribute.
It is important to note that there is only one listener per
context and that it isn't an AudioNode.
-
AudioNode
-
The interface is a generic interface for representing an audio
processing module.
Examples include:
-
AudioNodeOptions
-
-
AudioOutputOptions
-
-
AudioParam
-
The Web Audio API's interface represents an audio-related
parameter, usually a parameter of an AudioNode (such as
GainNode.gain
).
An can be set to a specific value or a change in value, and can
be scheduled to happen at a specific time and following a
specific pattern.
Each has a list of events, initially empty, that define when and
how values change. When this list is not empty, changes using the
AudioParam.value
attributes are ignored. This list of events
allows us to schedule changes that have to happen at very precise
times, using arbitrary timeline-based automation curves. The time
used is the one defined in AudioContext.currentTime
.
-
AudioParamDescriptor
-
The dictionary of the Web Audio API specifies properties for
AudioParam objects.
It is used to create custom AudioParams on an
AudioWorkletNode. If the underlying AudioWorkletProcessor has
a
parameterDescriptors
static getter, then the returned array
of objects based on this dictionary is used internally by
AudioWorkletNode constructor to populate its parameters
property accordingly.
-
AudioParamMap
-
The Web Audio API interface represents a set of multiple audio
parameters, each described as a mapping of a String identifying
the parameter to the AudioParam object representing its value.
-
AudioProcessingEvent
-
Deprecated: This feature is no longer recommended. Though some
browsers might still support it, it may have already been removed
from the relevant web standards, may be in the process of being
dropped, or may only be kept for compatibility purposes. Avoid
using it, and update existing code if possible; see the
compatibility table at the bottom of this page to guide your
decision. Be aware that this feature may cease to work at any
time.
The Web Audio API represents events that occur when a
ScriptProcessorNode input buffer is ready to be processed.
-
AudioProcessingEventInit
-
-
AudioRenderCapacity
-
-
AudioRenderCapacityEvent
-
-
AudioRenderCapacityEventInit
-
-
AudioRenderCapacityOptions
-
-
AudioScheduledSourceNode
-
The interface—part of the Web Audio API—is a parent interface
for several types of audio source node interfaces which share the
ability to be started and stopped, optionally at specified times.
Specifically, this interface defines the
start()
and stop()
methods, as well as the onended event handler.
-
AudioTimestamp
-
-
AudioTrack
-
The interface represents a single audio track from one of the
HTML media elements,
<audio>
or <video>
.
The most common use for accessing an object is to toggle its
enabled property in order to mute and unmute the track.
-
AudioTrackList
-
The interface is used to represent a list of the audio tracks
contained within a given HTML media element, with each track
represented by a separate AudioTrack object in the list.
Retrieve an instance of this object with
HTMLMediaElement.audioTracks
. The individual tracks can be
accessed using array syntax.
-
AudioWorklet
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the Web Audio API is used to supply custom
audio processing scripts that execute in a separate thread to
provide very low latency audio processing.
The worklet's code is run in the AudioWorkletGlobalScope
global execution context, using a separate Web Audio thread which
is shared by the worklet and other audio nodes.
Access the audio context's instance of through the
BaseAudioContext.audioWorklet
property.
-
AudioWorkletGlobalScope
-
The interface of the Web Audio API represents a global execution
context for user-supplied code, which defines custom
AudioWorkletProcessor-derived classes.
Each BaseAudioContext has a single AudioWorklet available
under the
audioWorklet
property, which runs its code in a
single .
As the global execution context is shared across the current
BaseAudioContext, it's possible to define any other variables
and perform any actions allowed in worklets — apart from defining
AudioWorkletProcessor-derived classes.
-
AudioWorkletNode
-
Note: Although the interface is available outside secure
contexts, the
BaseAudioContext.audioWorklet
property is not,
thus custom AudioWorkletProcessors cannot be defined outside
them.
-
AudioWorkletNodeOptions
-
-
AudioWorkletProcessor
-
The interface of the Web Audio API represents an audio
processing code behind a custom AudioWorkletNode. It lives in
the AudioWorkletGlobalScope and runs on the Web Audio rendering
thread. In turn, an AudioWorkletNode based on it runs on the
main thread.
-
AuthenticationExtensionsClientInputs
-
-
AuthenticationExtensionsClientInputsJSON
-
-
AuthenticationExtensionsClientOutputs
-
-
AuthenticationExtensionsClientOutputsJSON
-
-
AuthenticationExtensionsLargeBlobInputs
-
-
AuthenticationExtensionsLargeBlobOutputs
-
-
AuthenticationExtensionsPaymentInputs
-
-
AuthenticationExtensionsPRFInputs
-
-
AuthenticationExtensionsPRFOutputs
-
-
AuthenticationExtensionsPRFValues
-
-
AuthenticationResponseJSON
-
-
AuthenticatorAssertionResponse
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the Web Authentication API is returned by
CredentialsContainer.get()
when a PublicKeyCredential is
passed, and provides proof to a service that it has a key pair
and that the authentication request is valid and approved.
This interface inherits from AuthenticatorResponse.
-
AuthenticatorAssertionResponseJSON
-
-
AuthenticatorAttestationResponse
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the Web Authentication API is returned by
CredentialsContainer.create()
when a PublicKeyCredential is
passed, and provides a cryptographic root of trust for the new
key pair that has been generated. This response should be sent to
the relying party's server to complete the creation of the
credential.
This interface inherits from AuthenticatorResponse.
-
AuthenticatorAttestationResponseJSON
-
-
AuthenticatorResponse
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the Web Authentication API is the base
interface for interfaces that provide a cryptographic root of
trust for a key pair. The child interfaces include information
from the browser such as the challenge origin and either may be
returned from
PublicKeyCredential.response
.
-
AuthenticatorSelectionCriteria
-
-
BackgroundFetchEvent
-
The interface of the Background Fetch API is the event type for
background fetch events dispatched on the
service worker global
scope
.
It is the event type passed to onbackgroundfetchabort
and
onbackgroundfetchclick
.
-
BackgroundFetchEventInit
-
-
BackgroundFetchManager
-
The interface of the Background Fetch API is a map where the
keys are background fetch IDs and the values are
BackgroundFetchRegistration objects.
-
BackgroundFetchOptions
-
-
BackgroundFetchRecord
-
The interface of the Background Fetch API represents an
individual request and response.
A is created by the
BackgroundFetchManager.fetch()
method,
therefore there is no constructor for this interface.
There will be one for each resource requested by fetch()
.
-
BackgroundFetchRegistration
-
The interface of the Background Fetch API represents an
individual background fetch.
A instance is returned by the
BackgroundFetchManager.fetch()
or BackgroundFetchManager.get()
methods, and therefore there
has no constructor.
-
BackgroundFetchUIOptions
-
-
BackgroundFetchUpdateUIEvent
-
The interface of the Background Fetch API is an event type
passed to
ServiceWorkerGlobalScope.onbackgroundfetchsuccess
and
ServiceWorkerGlobalScope.onbackgroundfetchfail
, and provides a
method for updating the title and icon of the app to inform a
user of the success or failure of a background fetch.
-
BackgroundSyncOptions
-
-
BarcodeDetector
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the
Barcode Detection API
allows detection of
linear and two dimensional barcodes in images.
-
BarcodeDetectorOptions
-
-
BarProp
-
The interface of the
Document Object Model
represents the web
browser user interface elements that are exposed to scripts in
web pages. Each of the following interface elements are
represented by a object.
-
BaseAudioContext
-
The interface of the Web Audio API acts as a base definition for
online and offline audio-processing graphs, as represented by
AudioContext and OfflineAudioContext respectively. You
wouldn't use directly — you'd use its features via one of these
two inheriting interfaces.
A can be a target of events, therefore it implements the
EventTarget interface.
-
BaseComputedKeyframe
-
-
BaseKeyframe
-
-
Baseline
-
-
BasePropertyIndexedKeyframe
-
-
BatteryManager
-
Deprecated: This feature is no longer recommended. Though some
browsers might still support it, it may have already been removed
from the relevant web standards, may be in the process of being
dropped, or may only be kept for compatibility purposes. Avoid
using it, and update existing code if possible; see the
compatibility table at the bottom of this page to guide your
decision. Be aware that this feature may cease to work at any
time.
The interface of the Battery Status API provides information
about the system's battery charge level. The
navigator.getBattery()
method returns a promise that resolves
with a interface.
-
BeforeInstallPromptEvent
-
The is fired at the
Window.onbeforeinstallprompt
handler
before a user is prompted to "install" a web site to a home
screen on mobile.
This interface inherits from the Event interface.
-
BeforeUnloadEvent
-
The
beforeunload
event is fired when the window, the document
and its resources are about to be unloaded.
When a non-empty string is assigned to the returnValue Event
property, a dialog box appears, asking the users for confirmation
to leave the page (see example below). When no value is provided,
the event is processed silently. Some implementations only show
the dialog box if the frame or any embedded frame receives a user
gesture or user interaction. See Browser compatibility for more
information.
-
BiquadFilterNode
-
The interface represents a simple low-order filter, and is
created using the
BaseAudioContext/createBiquadFilter
method.
It is an AudioNode that can represent different kinds of
filters, tone control devices, and graphic equalizers. A always
has exactly one input and one output.
-
BiquadFilterOptions
-
-
Blob
-
The object represents a blob, which is a file-like object of
immutable, raw data; they can be read as text or binary data, or
converted into a ReadableStream so its methods can be used for
processing the data.
Blobs can represent data that isn't necessarily in a
JavaScript-native format. The File interface is based on ,
inheriting blob functionality and expanding it to support files
on the user's system.
-
BlobEvent
-
The interface represents events associated with a Blob. These
blobs are typically, but not necessarily, associated with media
content.
-
BlobEventInit
-
-
BlobPropertyBag
-
-
Bluetooth
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting
browsers.Experimental: This is an experimental technologyCheck
the Browser compatibility table carefully before using this in
production.
-
BluetoothAdvertisingEvent
-
-
BluetoothAdvertisingEventInit
-
-
BluetoothCharacteristicProperties
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting
browsers.Experimental: This is an experimental technologyCheck
the Browser compatibility table carefully before using this in
production.
The interface of the Web Bluetooth API provides the operations
that are valid on the given BluetoothRemoteGATTCharacteristic.
This interface is returned by calling
BluetoothRemoteGATTCharacteristic.properties
.
-
BluetoothDataFilterInit
-
-
BluetoothDevice
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
-
BluetoothDeviceEventHandlers
-
-
BluetoothLEScanFilterInit
-
-
BluetoothManufacturerDataFilterInit
-
-
BluetoothManufacturerDataMap
-
-
BluetoothPermissionDescriptor
-
-
BluetoothPermissionResult
-
-
BluetoothPermissionStorage
-
-
BluetoothRemoteGATTCharacteristic
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The
BluetoothRemoteGattCharacteristic
interface of the Web
Bluetooth API represents a GATT Characteristic, which is a basic
data element that provides further information about a
peripheral’s service.
-
BluetoothRemoteGATTDescriptor
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
-
BluetoothRemoteGATTServer
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
-
BluetoothRemoteGATTService
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
-
BluetoothServiceDataFilterInit
-
-
BluetoothServiceDataMap
-
-
BluetoothUUID
-
The interface of the
Web Bluetooth API
provides a way to look
up Universally Unique Identifier (UUID) values by name in the
registry maintained by the Bluetooth SIG.
-
Body
-
-
BoxQuadOptions
-
-
BreakToken
-
-
BreakTokenOptions
-
-
BroadcastChannel
-
The interface represents a named channel that any browsing
context of a given origin can subscribe to. It allows
communication between different documents (in different windows,
tabs, frames or iframes) of the same origin. Messages are
broadcasted via a
message
event fired at all objects listening
to the channel.
Note: This feature is available in Web Workers
-
BrowserCaptureMediaStreamTrack
-
-
ByteLengthQueuingStrategy
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the Streams API provides a built-in byte length
queuing strategy that can be used when constructing streams.
-
Cache
-
The interface provides a persistent storage mechanism for
[Request] / [Response] object pairs that are cached in long
lived memory. How long a Cache lives is browser dependent, but a
single origin's scripts can typically rely on the presence of a
previously populated Cache. Note that the interface is exposed to
windowed scopes as well as workers. You don't have to use it in
conjunction with service workers, even though it is defined in
the service worker spec.
An origin can have multiple, named objects. You are responsible
for implementing how your script (e.g. in a ServiceWorker)
handles updates. Items in a do not get updated unless explicitly
requested; they don’t expire unless deleted. Use
CacheStorage.open()
to open a specific named object and then
call any of the methods to maintain the .
You are also responsible for periodically purging cache entries.
Each browser has a hard limit on the amount of cache storage that
a given origin can use. Cache quota usage estimates are available
via the StorageManager.estimate()
method. The browser does its
best to manage disk space, but it may delete the Cache storage
for an origin. The browser will generally delete all of the data
for an origin or none of the data for an origin. Make sure to
version caches by name and use the caches only from the version
of the script that they can safely operate on. See Deleting old
caches for more information.
-
CacheQueryOptions
-
-
CacheStorage
-
The interface represents the storage for Cache objects.
The interface:
-
CameraDevicePermissionDescriptor
-
-
CanMakePaymentEvent
-
-
CanMakePaymentEventInit
-
-
CanvasCaptureMediaStreamTrack
-
The interface represents the video track contained in a
MediaStream being generated from a
<canvas>
following a call
to HTMLCanvasElement.captureStream()
.
Part of the Media Capture and Streams API.
-
CanvasCompositing
-
-
CanvasDrawImage
-
-
CanvasDrawPath
-
-
CanvasFillStrokeStyles
-
-
CanvasFilters
-
-
CanvasGradient
-
The interface represents an opaque object describing a gradient.
It is returned by the methods
CanvasRenderingContext2D.createLinearGradient()
,
CanvasRenderingContext2D.createConicGradient()
or
CanvasRenderingContext2D.createRadialGradient()
.
It can be used as a fillStyle
or strokeStyle
.
-
CanvasImageData
-
-
CanvasImageSmoothing
-
-
CanvasPath
-
-
CanvasPathDrawingStyles
-
-
CanvasPattern
-
The interface represents an opaque object describing a pattern,
based on an image, a canvas, or a video, created by the
CanvasRenderingContext2D.createPattern()
method.
It can be used as a fillStyle
or strokeStyle
.
-
CanvasRect
-
-
CanvasRenderingContext2D
-
The interface, part of the Canvas API, provides the 2D rendering
context for the drawing surface of a
<canvas>
element. It is
used for drawing shapes, text, images, and other objects.
See the interface's properties and methods in the sidebar and
below. The Canvas tutorial has more explanation, examples, and
resources, as well.
-
CanvasRenderingContext2DSettings
-
-
CanvasShadowStyles
-
-
CanvasState
-
-
CanvasText
-
-
CanvasTextDrawingStyles
-
-
CanvasTransform
-
-
CanvasUserInterface
-
-
CaptureActionEvent
-
-
CaptureActionEventInit
-
-
CaptureHandle
-
-
CaptureHandleConfig
-
-
CaretPosition
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface represents the caret position, an indicator for
the text insertion point. You can get a using the
Document.caretPositionFromPoint()
method.
-
CDATASection
-
The interface represents a CDATA section
that can be used within XML to include extended portions of
unescaped text.
When inside a CDATA section, the symbols
<
and &
don't need
escaping
as they normally do.
-
ChannelMergerNode
-
The interface, often used in conjunction with its opposite,
ChannelSplitterNode, reunites different mono inputs into a
single output. Each input is used to fill a channel of the
output. This is useful for accessing each channels separately,
e.g. for performing channel mixing where gain must be separately
controlled on each channel.
-
ChannelMergerOptions
-
-
ChannelSplitterNode
-
The interface, often used in conjunction with its opposite,
ChannelMergerNode, separates the different channels of an audio
source into a set of mono outputs. This is useful for accessing
each channel separately, e.g. for performing channel mixing where
gain must be separately controlled on each channel.
-
ChannelSplitterOptions
-
-
CharacterBoundsUpdateEvent
-
-
CharacterBoundsUpdateEventInit
-
-
CharacterData
-
The abstract interface represents a Node object that contains
characters. This is an abstract interface, meaning there aren't
any objects of type : it is implemented by other interfaces like
Text, Comment, CDATASection, or ProcessingInstruction,
which aren't abstract.
-
CharacteristicEventHandlers
-
-
CheckVisibilityOptions
-
-
ChildBreakToken
-
-
ChildNode
-
-
Client
-
The interface represents an executable context such as a
Worker, or a SharedWorker. Window clients are represented
by the more-specific WindowClient. You can get /WindowClient
objects from methods such as
Clients.matchAll()
and
Clients.get()
.
-
ClientQueryOptions
-
-
Clients
-
The interface provides access to Client objects. Access it via
[
self
.clients] within a service worker.
-
Clipboard
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface implements the Clipboard API, providing—if the
user grants permission—both read and write access to the contents
of the system clipboard. The Clipboard API can be used to
implement cut, copy, and paste features within a web application.
-
ClipboardEvent
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface represents events providing information related to
modification of the clipboard, that is
cut
, copy
, and paste
events.
-
ClipboardEventInit
-
-
ClipboardItem
-
The interface of the
Clipboard API
represents a single item
format, used when reading or writing data via the Clipboard
API
. That is clipboard.read()
and clipboard.write()
respectively.
The benefit of having the interface to represent data, is that
it enables developers to cope with the varying scope of file
types and data easily.
Access to the contents of the clipboard is gated behind the
Permissions API: The clipboard-write
permission is granted
automatically to pages when they are in the active tab. The
clipboard-read
permission must be requested, which you can do
by trying to read data from the clipboard.
-
ClipboardItemOptions
-
-
ClipboardPermissionDescriptor
-
-
CloseEvent
-
A is sent to clients using WebSockets when the connection is
closed. This is delivered to the listener indicated by the
WebSocket object's
onclose
attribute.
-
CloseEventInit
-
-
CloseWatcher
-
-
CloseWatcherOptions
-
-
CollectedClientAdditionalPaymentData
-
-
CollectedClientData
-
-
CollectedClientPaymentData
-
-
ColorSelectionOptions
-
-
ColorSelectionResult
-
-
The interface represents textual notations within markup;
although it is generally not visually shown, such comments are
available to be read in the source view.
Comments are represented in HTML and XML as content between
'
<!--]' and '[-->
'. In XML, like inside SVG or MathML markup,
the character sequence '--
' cannot be used within a comment.
-
CompositionEvent
-
The DOM represents events that occur due to the user indirectly
entering text.
-
CompositionEventInit
-
-
CompressionStream
-
The interface of the Compression Streams API is an API for
compressing a stream of data.
-
ComputedEffectTiming
-
-
Console
-
The object provides access to the browser's
debugging console (e.g. the Web console in Firefox).
The specifics of how it works varies from browser to browser,
but there is a de facto
set of features that are typically provided.
The object can be accessed from any global object. Window on
browsing scopes and WorkerGlobalScope as specific variants in
workers via the
property console. It's exposed as
Window.console
, and can be
referenced as
. For example:
-
ConstantSourceNode
-
The interface—part of the Web Audio API—represents an audio
source (based upon AudioScheduledSourceNode) whose output is
single unchanging value. This makes it useful for cases in which
you need a constant value coming in from an audio source. In
addition, it can be used like a constructible AudioParam by
automating the value of its offset or by connecting another
node to it; see Controlling multiple parameters with
ConstantSourceNode.
A has no inputs and exactly one monaural (one-channel) output.
The output's value is always the same as the value of the
offset parameter.
-
ConstantSourceOptions
-
-
ConstrainBooleanParameters
-
-
ConstrainDOMStringParameters
-
-
ConstrainDoubleRange
-
-
ConstrainPoint2DParameters
-
-
ConstrainULongRange
-
-
ContactAddress
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the Contact Picker API represents a physical
address. Instances of this interface are retrieved from the
address
property of the objects returned by
ContactManager.getProperties()
.
It may be useful to refer to the Universal Postal Union web
site's Addressing S42 standard materials, which provide
information about international standards for postal addresses.
-
ContactInfo
-
-
ContactsManager
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the
Contact Picker API
allows users to select
entries from their contact list and share limited details of the
selected entries with a website or application.
The is available through the global navigator.contacts
property.
-
ContactsSelectOptions
-
-
ContentDescription
-
-
ContentIndex
-
The interface of the
Content Index API
allows developers to
register their offline enabled content with the browser.
-
ContentIndexEvent
-
The interface of the
Content Index API
defines the object used
to represent the contentdelete
event.
This event is sent to the global scope
of a ServiceWorker.
It contains the id of the indexed content to be removed.
The contentdelete
event is only fired when the deletion
happens due to interaction with the browser's built-in user
interface. It is not fired when the ContentIndex.delete
method
is called.
-
ContentIndexEventInit
-
-
ContentVisibilityAutoStateChangedEvent
-
-
ContentVisibilityAutoStateChangedEventInit
-
-
ConvertCoordinateOptions
-
-
ConvolverNode
-
The interface is an AudioNode that performs a Linear
Convolution on a given AudioBuffer, often used to achieve a
reverb effect. A always has exactly one input and one output.
-
ConvolverOptions
-
-
CookieChangeEvent
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the
Cookie Store API
is the event type passed
to CookieStore.onchange()
when any cookie changes have
occurred. A cookie change consists of a cookie and a type (either
"changed" or "deleted").
Cookie changes that will cause the to be dispatched are:
-
CookieChangeEventInit
-
-
CookieInit
-
-
CookieListItem
-
-
CookieStore
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the
Cookie Store API
provides methods for
getting and setting cookies asynchronously from either a page or
a service worker.
The is accessed via attributes in the global scope in a Window
or ServiceWorkerGlobalScope context. Therefore there is no
constructor.
-
CookieStoreDeleteOptions
-
-
CookieStoreGetOptions
-
-
CookieStoreManager
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the
Cookie Store
API allows service workers
to subscribe to events for cookie changes. By using the
subscribe()
method a particular service worker registration can
indicate that it is interested in change events.
A has an associated ServiceWorkerRegistration. Each service
worker registration has a cookie change subscription list, which
is a list of cookie change subscriptions each containing a name
and url. The methods in this interface allow the service worker
to add and remove subscriptions from this list, and to get a list
of all subscriptions.
To get a , call ServiceWorkerRegistration.cookies
.
-
CountQueuingStrategy
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the Streams API provides a built-in chunk
counting queuing strategy that can be used when constructing
streams.
-
CrashReportBody
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the Reporting API represents the body of a
crash report (the return value of its
Report.body
property).
A crash report is generated when a document becomes unusable due
to the browser (or one of its processes) crashing. For security
reasons, no details of the crash are communicated in the body
except for a general crash reason.
-
Credential
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.Secure context: This feature is available only in
secure contexts (HTTPS), in some or all supporting browsers.
The interface of the Credential Management API provides
information about an entity (usually a user) as a prerequisite to
a trust decision.
objects may be of 3 different types:
-
CredentialCreationOptions
-
-
CredentialData
-
-
CredentialPropertiesOutput
-
-
CredentialRequestOptions
-
-
CredentialsContainer
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.Secure context: This feature is available only in
secure contexts (HTTPS), in some or all supporting browsers.
The interface of the Credential Management API exposes methods
to request credentials and notify the user agent when events such
as successful sign in or sign out happen. This interface is
accessible from
Navigator.credentials
.
-
CredentialUserData
-
-
CropTarget
-
-
Crypto
-
The interface represents basic cryptography features available
in the current context.
It allows access to a cryptographically strong random number
generator and to cryptographic primitives.
-
CryptoKey
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the Web Crypto API represents a cryptographic
key obtained from one of the SubtleCrypto methods
generateKey()
, deriveKey()
, importKey()
, or unwrapKey()
.
For security reasons, the interface can only be used in a secure
context.
-
CryptoKeyPair
-
The dictionary of the Web Crypto API represents a key pair for
an asymmetric cryptography algorithm, also known as a public-key
algorithm.
A object can be obtained using
SubtleCrypto.generateKey()
,
when the selected algorithm is one of the asymmetric algorithms:
RSASSA-PKCS1-v1_5, RSA-PSS, RSA-OAEP, ECDSA, or ECDH.
It contains two properties, which are both CryptoKey objects:
a privateKey property containing the private key and a
publicKey property containing the public key.
-
CSPViolationReportBody
-
-
Css
-
The interface holds useful CSS-related methods. No objects with
this interface are implemented: it contains only static methods
and is therefore a utilitarian interface.
-
CSSAnimation
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the Web Animations API represents an
Animation object.
-
CSSColor
-
-
CSSColorValue
-
-
CSSConditionRule
-
An object implementing the interface represents a single
condition CSS
at-rule
, which consists of a condition and a
statement block.
Two objects derive from : CSSMediaRule and CSSSupportsRule.
-
CSSContainerRule
-
-
CSSCounterStyleRule
-
The interface represents an
@counter-style
at-rule.
-
CSSFontFaceRule
-
The interface represents an
@font-face
at-rule
.
-
CSSFontFeatureValuesMap
-
-
CSSFontFeatureValuesRule
-
-
CSSFontPaletteValuesRule
-
-
CSSGroupingRule
-
The interface of the
CSS Object Model
represents any CSS
at-rule
that contains other rules nested within it.
-
Csshsl
-
-
Csshwb
-
-
CSSImageValue
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the CSS Typed Object Model API represents
values for properties that take an image, for example
background-image
, list-style-image
, or border-image-source
.
The CSSImageValue object represents an <image>
that involves
an URL, such as url()
or image()
, but not linear-gradient()
or element()
.
-
CSSImportRule
-
The interface represents an
@import
at-rule
.
-
CSSKeyframeRule
-
The interface describes an object representing a set of styles
for a given keyframe. It corresponds to the contents of a single
keyframe of a
@keyframes
at-rule
.
-
CSSKeyframesRule
-
The interface describes an object representing a complete set of
keyframes for a CSS animation. It corresponds to the contents of
a whole
@keyframes
at-rule
.
-
CSSKeywordValue
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the CSS Typed Object Model API creates an
object to represent CSS keywords and other identifiers.
The interface instance name is a stringifier meaning that when
used anywhere a string is expected it will return the value of
CSSKeyword.value
.
-
CSSLab
-
-
CSSLayerBlockRule
-
-
CSSLayerStatementRule
-
-
Csslch
-
-
CSSMarginRule
-
-
CSSMathClamp
-
-
CSSMathInvert
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the CSS_Object_Model#css_typed_object_model
represents a CSS
calc()
used as calc(1 / <value>).
It
inherits properties and methods from its parent
CSSNumericValue.
-
CSSMathMax
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the CSS_Object_Model#css_typed_object_model
represents the CSS max() function. It inherits properties and
methods from its parent CSSNumericValue.
-
CSSMathMin
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the CSS_Object_Model#css_typed_object_model
represents the CSS min() function. It inherits properties and
methods from its parent CSSNumericValue.
-
CSSMathNegate
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the CSS_Object_Model#css_typed_object_model
negates the value passed into it. It inherits properties and
methods from its parent CSSNumericValue.
-
CSSMathProduct
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the CSS_Object_Model#css_typed_object_model
represents the result obtained by calling add(),
sub()
, or
toSum()
on CSSNumericValue. It inherits properties and
methods from its parent CSSNumericValue.
-
CSSMathSum
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the CSS_Object_Model#css_typed_object_model
represents the result obtained by calling add(),
sub()
, or
toSum()
on CSSNumericValue.
A CSSMathSum is the object type returned when the
StylePropertyMapReadOnly.get()
method is used on a CSS property
whose value is created with a calc()
function.
-
CSSMathValue
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the CSS_Object_Model#css_typed_object_model a
base class for classes representing complex numeric values.
-
CSSMatrixComponent
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the CSS_Object_Model#css_typed_object_model
represents the matrix() and matrix3d() values of the individual
transform
property in CSS. It inherits properties and methods
from its parent CSSTransformValue.
-
CSSMatrixComponentOptions
-
-
CSSMediaRule
-
The interface represents a single CSS
@media
rule.
-
CSSNamespaceRule
-
The interface describes an object representing a single CSS
@namespace
at-rule
.
-
CSSNestingRule
-
-
CSSNumericArray
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the CSS_Object_Model#css_typed_object_model
contains a list of CSSNumericValue objects.
-
CSSNumericType
-
-
CSSNumericValue
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the CSS Typed Object Model API represents
operations that all numeric values can perform.
-
CSSOKLab
-
-
Cssoklch
-
-
represents a single CSS
@page
rule.
-
CSSParserAtRule
-
-
CSSParserBlock
-
-
CSSParserDeclaration
-
-
CSSParserFunction
-
-
CSSParserOptions
-
-
CSSParserQualifiedRule
-
-
CSSParserRule
-
-
CSSParserValue
-
-
CSSPerspective
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the CSS_Object_Model#css_typed_object_model
represents the perspective() value of the individual
transform
property in CSS. It inherits properties and methods from its
parent CSSTransformValue.
-
CSSPropertyRule
-
The interface of the CSS_Properties_and_Values_API represents a
single CSS
@property
rule.
-
CSSPseudoElement
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface represents a pseudo-element that may be the target
of an event or animated using the Web Animations API. Instances
of this interface may be obtained by calling
Element.pseudo()
.
-
Cssrgb
-
-
CSSRotate
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the CSS_Object_Model#css_typed_object_model
represents the rotate value of the individual
transform
property in CSS. It inherits properties and methods from its
parent CSSTransformValue.
-
CSSRule
-
The interface represents a single CSS rule. There are several
types of rules which inherit properties from .
-
CSSRuleList
-
A represents an ordered collection of read-only CSSRule
objects.
While the object is read-only, and cannot be directly modified,
it is considered a
live
object, as the content can change over
time.
To edit the underlying rules returned by CSSRule objects, use
CSSStyleSheet.insertRule()
and CSSStyleSheet.deleteRule()
,
which are methods of CSSStyleSheet.
The interface has no constructor. An instance of is returned by
CSSStyleSheet.cssRules and CSSKeyframesRule.cssRules
.
-
CSSScale
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the CSS_Object_Model#css_typed_object_model
represents the scale() and scale3d() values of the individual
transform
property in CSS. It inherits properties and methods
from its parent CSSTransformValue.
-
CSSSkew
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the CSS_Object_Model#css_typed_object_model is
part of the CSSTransformValue interface. It represents the
skew()
value of the individual transform
property in CSS.
-
CSSSkewX
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the CSS_Object_Model#css_typed_object_model
represents the
skewX()
value of the individual transform
property in CSS. It inherits properties and methods from its
parent CSSTransformValue.
-
CSSSkewY
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the CSS_Object_Model#css_typed_object_model
represents the
skewY()
value of the individual transform
property in CSS. It inherits properties and methods from its
parent CSSTransformValue.
-
CSSStyleDeclaration
-
The interface represents an object that is a CSS declaration
block, and exposes style information and various style-related
methods and properties.
A object can be exposed using three different APIs:
-
CSSStyleRule
-
The interface represents a single CSS style rule.
-
CSSStyleSheet
-
The interface represents a single CSS stylesheet, and lets you
inspect and modify the list of rules contained in the stylesheet.
It inherits properties and methods from its parent, StyleSheet.
-
CSSStyleSheetInit
-
-
CSSStyleValue
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the CSS Typed Object Model API is the base
class of all CSS values accessible through the Typed OM API. An
instance of this class may be used anywhere a string is expected.
-
CSSSupportsRule
-
The interface represents a single CSS
@supports
at-rule
.
-
CSSTransformComponent
-
The interface of the CSS_Object_Model#css_typed_object_model is
part of the CSSTransformValue interface.
-
CSSTransformValue
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the CSS_Object_Model#css_typed_object_model
represents
transform-list
values as used by the CSS transform
property.
-
CSSTransition
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the Web Animations API represents an
Animation object used for a CSS Transition.
-
CSSTranslate
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the CSS_Object_Model#css_typed_object_model
represents the translate() value of the individual
transform
property in CSS. It inherits properties and methods from its
parent CSSTransformValue.
-
CSSUnitValue
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the CSS_Object_Model#css_typed_object_model
represents values that contain a single unit type. For example,
"42px" would be represented by a CSSNumericValue.
-
CSSUnparsedValue
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the CSS_Object_Model#css_typed_object_model
represents property values that reference custom properties. It
consists of a list of string fragments and variable references.
Custom properties are represented by and
var()
references are
represented using CSSVariableReferenceValue.
-
CSSVariableReferenceValue
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the CSS_Object_Model#css_typed_object_model
allows you to create a custom name for a built-in CSS value. This
object functionality is sometimes called a "CSS variable" and
serves the same purpose as the
var()
function. The custom name
must begin with two dashes.
-
CSSViewportRule
-
-
CustomElementRegistry
-
The interface provides methods for registering custom elements
and querying registered elements. To get an instance of it, use
the
window.customElements
property.
-
CustomEvent
-
The interface represents events initialized by an application
for any purpose.
Note: This feature is available in Web Workers
-
CustomEventInit
-
-
CustomStateSet
-
The interface of the Document_Object_Model stores a list of
possible states for a custom element to be in, and allows states
to be added and removed from the set.
-
DataCue
-
-
DataTransfer
-
The object is used to hold the data that is being dragged during
a drag and drop operation. It may hold one or more data items,
each of one or more data types. For more information about drag
and drop, see HTML Drag and Drop API.
This object is available from the
dataTransfer
property of all
drag events
.
-
DataTransferItem
-
The object represents one drag data item. During a drag
operation, each
drag event
has a dataTransfer
property which
contains a list
of drag data items. Each item in the list is a
object.
This interface has no constructor.
-
DataTransferItemList
-
The object is a list of DataTransferItem objects representing
items being dragged. During a drag operation, each DragEvent
has a
dataTransfer
property and that property is a .
The individual items can be accessed using the array operator
[]
.
This interface has no constructor.
-
DecompressionStream
-
The interface of the Compression Streams API is an API for
decompressing a stream of data.
-
DedicatedWorkerGlobalScope
-
The object (the Worker global scope) is accessible through the
self keyword. Some additional global functions, namespaces
objects, and constructors, not typically associated with the
worker global scope, but available on it, are listed in the
JavaScript Reference. See also: Functions available to workers.
-
DelayNode
-
The interface represents a delay-line; an AudioNode
audio-processing module that causes a delay between the arrival
of an input data and its propagation to the output.
A always has exactly one input and one output, both with the
same amount of channels.
-
DelayOptions
-
-
DeprecationReportBody
-
The interface of the Reporting API represents the body of a
deprecation report.
A deprecation report is generated when a deprecated feature (for
example a deprecated API method) is used on a document being
observed by a ReportingObserver. In addition to the support of
this API, receiving useful deprecation warnings relies on browser
vendors adding these warnings for deprecated features.
-
DetectedBarcode
-
-
DetectedFace
-
-
DetectedText
-
-
DeviceMotionEvent
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The provides web developers with information about the speed of
changes for the device's position and orientation.
-
DeviceMotionEventAcceleration
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting
browsers.Experimental: This is an experimental technologyCheck
the Browser compatibility table carefully before using this in
production.
A object provides information about the amount of acceleration
the device is experiencing along all three axes.
-
DeviceMotionEventAccelerationInit
-
-
DeviceMotionEventInit
-
-
DeviceMotionEventRotationRate
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
Experimental: This is an experimental technologyCheck the Browser
compatibility table carefully before using this in production.
A object provides information about the rate at which the device
is rotating around all three axes.
-
DeviceMotionEventRotationRateInit
-
-
DeviceOrientationEvent
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The provides web developers with information from the physical
orientation of the device running the web page.
-
DeviceOrientationEventInit
-
-
DevicePermissionDescriptor
-
-
DevicePosture
-
-
DigitalGoodsService
-
-
DirectoryPickerOptions
-
-
DisplayMediaStreamOptions
-
-
Document
-
The interface represents any web page loaded in the browser and
serves as an entry point into the web page's content, which is
the DOM tree.
The DOM tree includes elements such as
<body>
and <table>
,
among many others. It provides functionality globally to the
document, like how to obtain the page's URL and create new
elements in the document.
-
DocumentAndElementEventHandlers
-
-
DocumentFragment
-
The interface represents a minimal document object that has no
parent.
It is used as a lightweight version of Document that stores a
segment of a document structure comprised of nodes just like a
standard document. The key difference is due to the fact that the
document fragment isn't part of the active document tree
structure. Changes made to the fragment don't affect the document
(even on reflow) or incur any performance impact when changes are
made.
-
DocumentOrShadowRoot
-
-
DocumentTimeline
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the Web Animations API represents animation
timelines, including the default document timeline (accessed via
Document.timeline
).
-
DocumentTimelineOptions
-
-
DocumentType
-
The interface represents a Node containing a doctype.
-
DOMException
-
The interface represents an abnormal event (called an exception)
that occurs as a result of calling a method or accessing a
property of a web API. This is how error conditions are described
in web APIs.
Each exception has a name, which is a short "PascalCase"-style
string identifying the error or abnormal condition.
-
DOMImplementation
-
The interface represents an object providing methods which are
not dependent on any particular document. Such an object is
returned by the
Document.implementation
property.
-
DOMMatrix
-
The interface represents 4×4 matrices, suitable for 2D and 3D
operations including rotation and translation. It is a mutable
version of the DOMMatrixReadOnly interface.
WebKitCSSMatrix
is an alias to .
This interface should be available inside web workers, though
some implementations don't allow it yet.
-
DOMMatrix2DInit
-
-
DOMMatrixInit
-
-
DOMMatrixReadOnly
-
The interface represents a read-only 4×4 matrix, suitable for 2D
and 3D operations. The DOMMatrix interface — which is based
upon —adds mutability, allowing you to alter the matrix after
creating it.
This interface should be available inside web workers, though
some implementations doesn't allow it yet.
-
DOMParser
-
The interface provides
the ability to parse XML or HTML source code from a
string into a DOM Document.
You can perform the opposite operation—converting a DOM tree
into XML or HTML
source—using the XMLSerializer interface.
In the case of an HTML document, you can also replace portions
of the DOM with new DOM
trees built from HTML by setting the value of the
Element.innerHTML
and
outerHTML
properties. These properties can also be
read to fetch HTML fragments corresponding to the corresponding
DOM subtree.
Note that XMLHttpRequest can parse XML and HTML directly
from a URL-addressable resource, returning a Document in its
response
property.
-
DOMPoint
-
A object represents a 2D or 3D point in a coordinate system; it
includes values for the coordinates in up to three dimensions, as
well as an optional perspective value. is based on
DOMPointReadOnly but allows its properties' values to be
changed.
In general, a positive x component represents a position to
the right of the origin, a positive y component is downward
from the origin, and a positive z component extends outward
from the screen (in other words, toward the user).
-
DOMPointInit
-
-
DOMPointReadOnly
-
The interface specifies the coordinate and perspective fields
used by DOMPoint to define a 2D or 3D point in a coordinate
system.
Note: This feature is available in Web Workers
-
DOMQuad
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
A is a collection of four DOMPoints defining the corners of an
arbitrary quadrilateral. Returning s lets
getBoxQuads()
return
accurate information even when arbitrary 2D or 3D transforms are
present. It has a handy bounds
attribute returning a
DOMRectReadOnly for those cases where you just want an
axis-aligned bounding rectangle.
-
DOMQuadInit
-
-
DOMRect
-
A describes the size and position of a rectangle.
The type of box represented by the is specified by the method or
property that returned it. For example,
VREyeParameters.renderRect
from the WebVR API specifies the
viewport of a canvas into which visuals for one eye of a head
mounted display should be rendered.
It inherits from its parent, DOMRectReadOnly.
-
DOMRectInit
-
-
DOMRectList
-
-
DOMRectReadOnly
-
The interface specifies the standard properties used by
DOMRect to define a rectangle whose properties are immutable.
-
DOMStringList
-
A type returned by some APIs which contains a list of DOMString
(strings).
-
DOMStringMap
-
The interface is used for the
HTMLElement.dataset
/SVGElement.dataset
attribute, to
represent data for custom attributes added to elements.
-
DOMTokenList
-
The interface represents a set of space-separated tokens. Such a
set is returned by
Element.classList
or
HTMLLinkElement.relList
, and many others.
A is indexed beginning with 0
as with JavaScript Array
objects. is always case-sensitive.
-
DoubleRange
-
-
DragEvent
-
The interface is a
DOM event
that represents a drag and drop
interaction. The user initiates a drag by placing a pointer
device (such as a mouse) on the touch surface and then dragging
the pointer to a new location (such as another DOM element).
Applications are free to interpret a drag and drop interaction in
an application-specific way.
This interface inherits properties from MouseEvent and
Event.
-
DragEventInit
-
-
DynamicsCompressorNode
-
The interface provides a compression effect, which lowers the
volume of the loudest parts of the signal in order to help
prevent clipping and distortion that can occur when multiple
sounds are played and multiplexed together at once. This is often
used in musical production and game audio. is an AudioNode that
has exactly one input and one output.
-
DynamicsCompressorOptions
-
-
EcdhKeyDeriveParams
-
The dictionary of the Web Crypto API represents the object that
should be passed as the
algorithm
parameter into
SubtleCrypto.deriveKey()
, when using the ECDH algorithm.
ECDH enables two people who each have a key pair consisting of a
public and a private key to derive a shared secret. They exchange
public keys and use the combination of their private key and the
other entity's public key to derive a secret key that they — and
noone else — share.
The parameters for ECDH deriveKey()
therefore include the
other entity's public key, which is combined with this entity's
private key to derive the shared secret.
-
EcdsaParams
-
The dictionary of the Web Crypto API represents the object that
should be passed as the
algorithm
parameter into
SubtleCrypto.sign()
or SubtleCrypto.verify()
when using the
ECDSA algorithm.
-
EcKeyAlgorithm
-
-
EcKeyGenParams
-
The dictionary of the Web Crypto API represents the object that
should be passed as the
algorithm
parameter into
SubtleCrypto.generateKey()
, when generating any
elliptic-curve-based key pair: that is, when the algorithm is
identified as either of ECDSA or ECDH.
-
EcKeyImportParams
-
The dictionary of the Web Crypto API represents the object that
should be passed as the
algorithm
parameter into
SubtleCrypto.importKey()
or SubtleCrypto.unwrapKey()
, when
generating any elliptic-curve-based key pair: that is, when the
algorithm is identified as either of ECDSA or ECDH.
-
Ed448Params
-
-
EditContext
-
-
EditContextInit
-
-
EffectTiming
-
-
Element
-
is the most general base class from which all element objects
(i.e. objects that represent elements) in a Document inherit.
It only has methods and properties common to all kinds of
elements. More specific classes inherit from .
For example, the HTMLElement interface is the base interface
for HTML elements, while the SVGElement interface is the basis
for all SVG elements. Most functionality is specified further
down the class hierarchy.
Languages outside the realm of the Web platform, like XUL
through the
XULElement
interface, also implement .
-
ElementContentEditable
-
-
ElementCreationOptions
-
-
ElementCSSInlineStyle
-
-
ElementDefinitionOptions
-
-
ElementInternals
-
The interface of the Document_Object_Model gives web developers
a way to allow custom elements to fully participate in HTML
forms. It provides utilities for working with these elements in
the same way you would work with any standard HTML form element,
and also exposes the Accessibility Object Model to the element.
-
EncodedAudioChunk
-
The interface of the WebCodecs API represents a chunk of encoded
audio data.
-
EncodedAudioChunkInit
-
-
EncodedAudioChunkMetadata
-
-
EncodedVideoChunk
-
The interface of the WebCodecs API represents a chunk of encoded
video data.
-
EncodedVideoChunkInit
-
-
EncodedVideoChunkMetadata
-
-
EpubReadingSystem
-
-
ErrorEvent
-
The interface represents events providing information related to
errors in scripts or in files.
-
ErrorEventInit
-
-
Event
-
The interface represents an event which takes place in the DOM.
An event can be triggered by the user action e.g. clicking the
mouse button or tapping keyboard, or generated by APIs to
represent the progress of an asynchronous task. It can also be
triggered programmatically, such as by calling the
HTMLElement.click()
method of an element, or by defining the
event, then sending it to a specified target using
EventTarget.dispatchEvent()
.
There are many types of events, some of which use other
interfaces based on the main interface. itself contains the
properties and methods which are common to all events.
Many DOM elements can be set up to accept (or "listen" for)
these events, and execute code in response to process (or
"handle") them. Event-handlers are usually connected (or
"attached") to various HTML elements (such as <button>
,
<div>
, <span>
, etc.) using EventTarget.addEventListener()
,
and this generally replaces using the old HTML event handler
attributes. Further, when properly added, such handlers can also
be disconnected if needed using removeEventListener()
.
-
EventCounts
-
-
EventInit
-
-
EventListenerOptions
-
-
EventModifierInit
-
-
EventSource
-
The interface is web content's interface to server-sent events.
An instance opens a persistent connection to an HTTP server,
which sends events in
text/event-stream
format. The connection
remains open until closed by calling EventSource.close()
.
-
EventSourceInit
-
-
EventTarget
-
The interface is implemented by objects that can receive events
and may have listeners for them.
In other words, any target of events implements the three
methods associated with this interface.
Element, and its children, as well as Document and
Window, are the most common event targets,
but other objects can be event targets, too.
For example XMLHttpRequest, AudioNode, and AudioContext
are also event targets.
-
EXTBlendMinmax
-
The extension is part of the WebGL API and extends blending
capabilities by adding two new blend equations: the minimum or
maximum color components of the source and destination colors.
WebGL extensions are available using the
WebGLRenderingContext.getExtension()
method. For more
information, see also Using Extensions in the WebGL tutorial.
-
EXTClipCullDistance
-
-
EXTColorBufferFloat
-
The extension is part of WebGL and adds the ability to render a
variety of floating point formats.
WebGL extensions are available using the
WebGLRenderingContext.getExtension()
method. For more
information, see also Using Extensions in the WebGL tutorial.
-
EXTColorBufferHalfFloat
-
The extension is part of the WebGL API and adds the ability to
render to 16-bit floating-point color buffers.
WebGL extensions are available using the
WebGLRenderingContext.getExtension()
method. For more
information, see also Using Extensions in the WebGL tutorial.
-
EXTDisjointTimerQuery
-
The EXT_disjoint_timer_query extension is part of the WebGL API
and provides a way to measure the duration of a set of GL
commands, without stalling the rendering pipeline.
WebGL extensions are available using the
WebGLRenderingContext.getExtension()
method. For more
information, see also Using Extensions in the WebGL tutorial.
-
EXTDisjointTimerQueryWebgl2
-
-
ExtendableCookieChangeEvent
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the
Cookie Store API
is the event type passed
to ServiceWorkerRegistration.oncookiechange()
when any cookie
changes have occurred. A cookie change event consists of a cookie
and a type (either "changed" or "deleted".)
Cookie changes that cause the to be dispatched are:
-
ExtendableCookieChangeEventInit
-
-
ExtendableEvent
-
The interface extends the lifetime of the
install
and
activate
events dispatched on the global scope as part of the
service worker lifecycle. This ensures that any functional events
(like FetchEvent) are not dispatched until it upgrades database
schemas and deletes the outdated cache entries.
If waitUntil()
is called outside of the handler, the browser
should throw an InvalidStateError
; note also that multiple
calls will stack up, and the resulting promises will be added to
the list of extend lifetime promises.
-
ExtendableEventInit
-
-
ExtendableMessageEvent
-
The interface of the Service Worker API represents the event
object of a
message
event fired on a service worker (when a
message is received on the ServiceWorkerGlobalScope from
another context) — extends the lifetime of such events.
This interface inherits from the ExtendableEvent interface.
-
ExtendableMessageEventInit
-
-
External
-
-
EXTFloatBlend
-
The WebGL API's extension allows blending and draw buffers with
32-bit floating-point components.
WebGL extensions are available using the
WebGLRenderingContext.getExtension()
method. For more
information, see also Using Extensions in the WebGL tutorial.
-
EXTFragDepth
-
The extension is part of the WebGL API and enables to set a
depth value of a fragment from within the fragment shader.
WebGL extensions are available using the
WebGLRenderingContext.getExtension()
method. For more
information, see also Using Extensions in the WebGL tutorial.
-
EXTShaderTextureLod
-
The extension is part of the WebGL API and adds additional
texture functions to the OpenGL ES Shading Language which provide
the shader writer with explicit control of LOD (Level of detail).
WebGL extensions are available using the
WebGLRenderingContext.getExtension()
method. For more
information, see also Using Extensions in the WebGL tutorial.
-
EXTSRGB
-
The extension is part of the WebGL API and adds sRGB support to
textures and framebuffer objects.
WebGL extensions are available using the
WebGLRenderingContext.getExtension()
method. For more
information, see also Using Extensions in the WebGL tutorial.
-
EXTTextureCompressionBptc
-
The extension is part of the WebGL API and exposes 4 BPTC
compressed texture formats. These compression formats are called
BC7 and BC6H in Microsoft's DirectX API.
WebGL extensions are available using the
WebGLRenderingContext.getExtension()
method. For more
information, see also Using Extensions in the WebGL tutorial.
-
EXTTextureCompressionRgtc
-
The extension is part of the WebGL API and exposes 4 RGTC
compressed texture formats. RGTC is a block-based texture
compression format suited for unsigned and signed red and
red-green textures (Red-Green Texture Compression).
WebGL extensions are available using the
WebGLRenderingContext.getExtension()
method. For more
information, see also Using Extensions in the WebGL tutorial.
-
EXTTextureFilterAnisotropic
-
The extension is part of the WebGL API and exposes two constants
for anisotropic filtering (AF).
AF improves the quality of mipmapped texture access when viewing
a textured primitive at an oblique angle. Using just mipmapping,
these lookups have a tendency to average to grey.
WebGL extensions are available using the
WebGLRenderingContext.getExtension()
method. For more
information, see also Using Extensions in the WebGL tutorial.
-
EXTTextureNorm16
-
The extension is part of the WebGL API and provides a set of new
16-bit signed normalized and unsigned normalized formats
(fixed-point texture, renderbuffer and texture buffer).
When this extension is enabled:
-
EyeDropper
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting
browsers.Experimental: This is an experimental technologyCheck
the Browser compatibility table carefully before using this in
production.
The interface represents an instance of an eyedropper tool that
can be opened and used by the user to select colors from the
screen.
-
FaceDetector
-
-
FaceDetectorOptions
-
-
FederatedCredential
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the Credential Management API provides
information about credentials from a federated identity provider.
A federated identity provider is an entity that a website trusts
to correctly authenticate a user, and that provides an API for
that purpose. OpenID Connect is an example of a federated
identity provider framework.
In browsers that support it, an instance of this interface may
be passed in the
credential
member of the init
object for
global fetch()
.
-
FederatedCredentialInit
-
-
FederatedCredentialRequestOptions
-
-
FetchEvent
-
This is the event type for fetch events dispatched on the
service worker global scope. It contains information about the
fetch, including the request and how the receiver will treat the
response. It provides the
event.respondWith()
method, which
allows us to provide a response to this fetch.
-
FetchEventInit
-
-
File
-
The interface provides information about files and allows
JavaScript in a web page to access their content.
objects are generally retrieved from a FileList object
returned as a result of a user selecting files using the
<input>
element, from a drag and drop operation's
DataTransfer object, or from the mozGetAsFile()
API on an
HTMLCanvasElement.
A object is a specific kind of a Blob, and can be used in any
context that a Blob can. In particular, FileReader,
URL.createObjectURL()
, createImageBitmap()
, and
XMLHttpRequest.send()
accept both Blobs and s.
See Using files from web applications for more information and
examples.
-
FileList
-
An object of this type is returned by the
files
property of
the HTML <input>
element; this lets you access the list of
files selected with the <input type="file">
element. It's also
used for a list of files dropped into web content when using the
drag and drop API; see the DataTransfer object for details on
this usage.
-
FilePickerAcceptType
-
-
FilePickerOptions
-
-
FilePropertyBag
-
-
FileReader
-
The object lets web applications asynchronously read the
contents of files (or raw data buffers) stored on the user's
computer, using File or Blob objects to specify the file or
data to read.
File objects may be obtained from a FileList object returned
as a result of a user selecting files using the
<input>
element, from a drag and drop operation's DataTransfer object,
or from the mozGetAsFile()
API on an HTMLCanvasElement.
can only access the contents of files that the user has
explicitly selected, either using an HTML <input type="file">
element or by drag and drop. It cannot be used to read a file by
pathname from the user's file system. To read files on the
client's file system by pathname, use the File System Access API.
To read server-side files, use standard Ajax solutions, with CORS
permission if reading cross-domain.
Note: This feature is available in Web Workers
-
FileReaderSync
-
The interface allows to read File or Blob objects
synchronously.
Note: This feature is available in Web Workers
Warning: This interface is only available in workers as it
enables synchronous I/O that could potentially block.
-
FileSystem
-
The File and Directory Entries API interface is used to
represent a file system. These objects can be obtained from the
filesystem
property on any file system entry. Some browsers
offer additional APIs to create and manage file systems, such as
Chrome's requestFileSystem()
method.
This interface will not grant you access to the users
filesystem. Instead you will have a "virtual drive" within the
browser sandbox. If you want to gain access to the users
filesystem you need to invoke the user by eg. installing a Chrome
extension. The relevant Chrome API can be found here.
-
FileSystemCreateWritableOptions
-
-
FileSystemDirectoryEntry
-
The interface of the File and Directory Entries API represents a
directory in a file system. It provides methods which make it
possible to access and manipulate the files in a directory, as
well as to access the entries within the directory.
-
FileSystemDirectoryHandle
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the
File System Access API
provides a handle
to a file system directory. The interface is accessed via the
window.showDirectoryPicker()
method.
-
FileSystemDirectoryReader
-
The interface of the File and Directory Entries API lets you
access the FileSystemFileEntry-based objects (generally
FileSystemFileEntry or FileSystemDirectoryEntry) representing
each entry in a directory.
-
FileSystemEntry
-
The interface of the File and Directory Entries API represents a
single entry in a file system. The entry can be a file or a
directory (directories are represented by the
FileSystemDirectoryEntry interface). It includes methods for
working with files—including copying, moving, removing, and
reading files—as well as information about a file it points
to—including the file name and its path from the root to the
entry.
-
FileSystemFileEntry
-
The interface of the File System API represents a file in a file
system. It offers properties describing the file's attributes, as
well as the
file()
method, which creates a File object that
can be used to read the file.
-
FileSystemFileHandle
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the
File System Access API
represents a
handle to a file system entry. The interface is accessed through
the window.showOpenFilePicker()
method.
Note that read and write operations depend on file-access
permissions that do not persist after a page refresh if no other
tabs for that origin remain open. The queryPermission method of
the FileSystemHandle interface can be used to verify permission
state before accessing a file.
-
FileSystemFlags
-
-
FileSystemGetDirectoryOptions
-
-
FileSystemGetFileOptions
-
-
FileSystemHandle
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the
File System Access API
is an object which
represents a file or directory entry. Multiple handles can
represent the same entry. For the most part you do not work with
directly but rather its child interfaces FileSystemFileHandle
and FileSystemDirectoryHandle.
-
FileSystemHandlePermissionDescriptor
-
-
FileSystemPermissionDescriptor
-
-
FileSystemRemoveOptions
-
-
FileSystemWritableFileStream
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the
File System Access API
is a
WritableStream object with additional convenience methods,
which operates on a single file on disk. The interface is
accessed through the FileSystemFileHandle.createWritable()
method.
-
FocusableAreasOption
-
-
FocusEvent
-
The interface represents focus-related events, including
focus
, blur
, focusin
, and focusout
.
-
FocusEventInit
-
-
FocusOptions
-
-
Font
-
-
FontData
-
-
FontFace
-
The interface represents a single usable font face. It allows
control of the source of the font face, being a URL to an
external resource, or a buffer; it also allows control of when
the font face is loaded and its current status.
-
FontFaceDescriptors
-
-
FontFaceFeatures
-
-
FontFacePalette
-
-
FontFacePalettes
-
-
FontFaceSet
-
The interface of the CSS Font Loading API manages the loading of
font-faces and querying of their download status. It is available
as
Document.fonts
.
-
FontFaceSetLoadEvent
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the CSS Font Loading API is fired whenever a
FontFaceSet loads.
-
FontFaceSetLoadEventInit
-
-
FontFaceSource
-
-
FontFaceVariationAxis
-
-
FontFaceVariations
-
-
FontMetrics
-
-
FormData
-
The interface provides a way to easily construct a set of
key/value pairs representing form fields and their values, which
can then be easily sent using the
XMLHttpRequest.send()
method.
It uses the same format a form would use if the encoding type
were set to "multipart/form-data"
.
You can also pass it directly to the URLSearchParams
constructor if you want to generate query parameters in the way a
<form>
would do if it were using simple GET
submission.
An object implementing can directly be used in a for...of
structure, instead of entries()
: for (var p of myFormData)
is
equivalent to for (var p of myFormData.entries())
.
-
FormDataEvent
-
The interface represents a
formdata
event — such an event is
fired on an HTMLFormElement object after the entry list
representing the form's data is constructed. This happens when
the form is submitted, but can also be triggered by the
invocation of a FormData() constructor.
This allows a FormData object to be quickly obtained in
response to a formdata
event firing, rather than needing to put
it together yourself when you wish to submit form data via a
method like XMLHttpRequest (see Using FormData objects).
-
FormDataEventInit
-
-
FragmentDirective
-
-
FragmentResult
-
-
FragmentResultOptions
-
-
FullscreenOptions
-
-
GainNode
-
The interface represents a change in volume. It is an
AudioNode audio-processing module that causes a given gain to
be applied to the input data before its propagation to the
output. A always has exactly one input and one output, both with
the same number of channels.
The gain is a unitless value, changing with time, that is
multiplied to each corresponding sample of all input channels. If
modified, the new gain is instantly applied, causing unaesthetic
'clicks' in the resulting audio. To prevent this from happening,
never change the value directly but use the exponential
interpolation methods on the AudioParam interface.
-
GainOptions
-
-
Gamepad
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the Gamepad API defines an individual gamepad
or other controller, allowing access to information such as
button presses, axis positions, and id.
A Gamepad object can be returned in one of two ways: via the
gamepad property of the
gamepadconnected
and
gamepaddisconnected
events, or by grabbing any position in the
array returned by the Navigator.getGamepads()
method.
-
GamepadButton
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface defines an individual button of a gamepad or other
controller, allowing access to the current state of different
types of buttons available on the control device.
A object is returned by querying any value of the array returned
by the
buttons
property of the Gamepad interface.
-
GamepadEvent
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The GamepadEvent interface of the Gamepad API contains
references to gamepads connected to the system, which is what the
gamepad events
Window.gamepadconnected
and
Window.gamepaddisconnected
are fired in response to.
-
GamepadEventInit
-
-
GamepadHapticActuator
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.Secure context: This feature is available only in
secure contexts (HTTPS), in some or all supporting browsers.
The interface of the Gamepad API represents hardware in the
controller designed to provide haptic feedback to the user (if
available), most commonly vibration hardware.
This interface is accessible through the
Gamepad.hapticActuators
property.
-
GamepadPose
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting
browsers.Experimental: This is an experimental technologyCheck
the Browser compatibility table carefully before using this in
production.
The interface of the Gamepad API represents the pose of a WebVR
controller at a given timestamp (which includes orientation,
position, velocity, and acceleration information.)
This interface is accessible through the
Gamepad.pose
property.
-
GamepadTouch
-
-
GenerateTestReportParameters
-
-
GenericTransformStream
-
-
Geolocation
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface represents an object able to programmatically
obtain the position of the device. It gives Web content access to
the location of the device. This allows a Web site or app to
offer customized results based on the user's location.
An object with this interface is obtained using the
navigator.geolocation
property implemented by the Navigator
object.
-
GeolocationCoordinates
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface represents the position and altitude of the device
on Earth, as well as the accuracy with which these properties are
calculated.
-
GeolocationPosition
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface represents the position of the concerned device at
a given time. The position, represented by a
GeolocationCoordinates object, comprehends the 2D position of
the device, on a spheroid representing the Earth, but also its
altitude and its speed.
-
GeolocationPositionError
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface represents the reason of an error occurring when
using the geolocating device.
-
GeolocationReadingValues
-
-
GeolocationSensor
-
-
GeolocationSensorOptions
-
-
GeolocationSensorReading
-
-
GeometryUtils
-
-
GetAnimationsOptions
-
-
GetNotificationOptions
-
-
GetRootNodeOptions
-
-
GetSVGDocument
-
-
Global
-
-
GlobalDescriptor
-
-
GlobalEventHandlers
-
The mixin describes the event handlers common to several
interfaces like HTMLElement, Document, or Window. Each of
these interfaces can, of course, add more event handlers in
addition to the ones listed below.
-
Gpu
-
-
GPUAdapter
-
-
GPUAdapterInfo
-
-
GPUBindGroup
-
-
GPUBindGroupDescriptor
-
-
GPUBindGroupEntry
-
-
GPUBindGroupLayout
-
-
GPUBindGroupLayoutDescriptor
-
-
GPUBindGroupLayoutEntry
-
-
GPUBindingCommandsMixin
-
-
GPUBlendComponent
-
-
GPUBlendState
-
-
GPUBuffer
-
-
GPUBufferBinding
-
-
GPUBufferBindingLayout
-
-
GPUBufferDescriptor
-
-
GPUBufferUsage
-
-
GPUCanvasConfiguration
-
-
GPUCanvasContext
-
-
GPUColorDict
-
-
GPUColorTargetState
-
-
GPUColorWrite
-
-
GPUCommandBuffer
-
-
GPUCommandBufferDescriptor
-
-
GPUCommandEncoder
-
-
GPUCommandEncoderDescriptor
-
-
GPUCommandsMixin
-
-
GPUCompilationInfo
-
-
GPUCompilationMessage
-
-
GPUComputePassDescriptor
-
-
GPUComputePassEncoder
-
-
GPUComputePassTimestampWrite
-
-
GPUComputePipeline
-
-
GPUComputePipelineDescriptor
-
-
GPUDebugCommandsMixin
-
-
GPUDepthStencilState
-
-
GPUDevice
-
-
GPUDeviceDescriptor
-
-
GPUDeviceLostInfo
-
-
GPUError
-
-
GPUExtent3DDict
-
-
GPUExternalTexture
-
-
GPUExternalTextureBindingLayout
-
-
GPUExternalTextureDescriptor
-
-
GPUFragmentState
-
-
GPUImageCopyBuffer
-
-
GPUImageCopyExternalImage
-
-
GPUImageCopyTexture
-
-
GPUImageCopyTextureTagged
-
-
GPUImageDataLayout
-
-
GPUMapMode
-
-
GPUMultisampleState
-
-
GPUObjectBase
-
-
GPUObjectDescriptorBase
-
-
GPUOrigin2DDict
-
-
GPUOrigin3DDict
-
-
GPUOutOfMemoryError
-
-
GPUPipelineBase
-
-
GPUPipelineDescriptorBase
-
-
GPUPipelineLayout
-
-
GPUPipelineLayoutDescriptor
-
-
GPUPrimitiveState
-
-
GPUProgrammableStage
-
-
GPUQuerySet
-
-
GPUQuerySetDescriptor
-
-
GPUQueue
-
-
GPUQueueDescriptor
-
-
GPURenderBundle
-
-
GPURenderBundleDescriptor
-
-
GPURenderBundleEncoder
-
-
GPURenderBundleEncoderDescriptor
-
-
GPURenderCommandsMixin
-
-
GPURenderPassColorAttachment
-
-
GPURenderPassDepthStencilAttachment
-
-
GPURenderPassDescriptor
-
-
GPURenderPassEncoder
-
-
GPURenderPassLayout
-
-
GPURenderPassTimestampWrite
-
-
GPURenderPipeline
-
-
GPURenderPipelineDescriptor
-
-
GPURequestAdapterOptions
-
-
GPUSampler
-
-
GPUSamplerBindingLayout
-
-
GPUSamplerDescriptor
-
-
GPUShaderModule
-
-
GPUShaderModuleCompilationHint
-
-
GPUShaderModuleDescriptor
-
-
GPUShaderStage
-
-
GPUStencilFaceState
-
-
GPUStorageTextureBindingLayout
-
-
GPUSupportedFeatures
-
-
GPUSupportedLimits
-
-
GPUTexture
-
-
GPUTextureBindingLayout
-
-
GPUTextureDescriptor
-
-
GPUTextureUsage
-
-
GPUTextureView
-
-
GPUTextureViewDescriptor
-
-
GPUUncapturedErrorEvent
-
-
GPUUncapturedErrorEventInit
-
-
GPUValidationError
-
-
GPUVertexAttribute
-
-
GPUVertexBufferLayout
-
-
GPUVertexState
-
-
GravityReadingValues
-
-
GravitySensor
-
The interface of the Sensor APIs provides on each reading the
gravity applied to the device along all three axes.
To use this sensor, the user must grant permission to the
'accelerometer'
device sensor through the Permissions API.
-
GroupEffect
-
-
Gyroscope
-
The interface of the Sensor APIs provides on each reading the
angular velocity of the device along all three axes.
To use this sensor, the user must grant permission to the
'gyroscope'
device sensor through the Permissions API.
If a feature policy blocks use of a feature it is because your
code is inconsistent with the policies set on your server. This
is not something that would ever be shown to a user. The
Feature-Policy
HTTP header article contains implementation
instructions.
-
GyroscopeReadingValues
-
-
GyroscopeSensorOptions
-
-
HashChangeEvent
-
The interface represents events that fire when the fragment
identifier of the URL has changed.
The fragment identifier is the part of the URL that follows (and
includes) the
#
symbol.
-
HashChangeEventInit
-
-
The interface of the Fetch API allows you to perform various
actions on HTTP request and response headers. These actions
include retrieving, setting, adding to, and removing headers from
the list of the request's headers.
A object has an associated header list, which is initially empty
and consists of zero or more name and value pairs. You can add to
this using methods like
append()
(see Examples.) In all methods
of this interface, header names are matched by case-insensitive
byte sequence.
For security reasons, some headers can only be controlled by the
user agent. These headers include the forbidden header names and
forbidden response header names.
A Headers object also has an associated guard, which takes a
value of immutable
, request
, request-no-cors
, response
,
or none
. This affects whether the set()
, delete(), and
append()
methods will mutate the header. For more information
see Guard.
You can retrieve a object via the Request.headers
and
Response.headers
properties, and create a new object using the
Headers.Headers() constructor.
An object implementing can directly be used in a for...of
structure, instead of entries()
: for (var p of myHeaders)
is
equivalent to for (var p of myHeaders.entries())
.
-
Hid
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface provides methods for connecting to HID devices,
listing attached HID devices and event handlers for connected HID
devices.
-
HIDCollectionInfo
-
-
HIDConnectionEvent
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the
WebHID API
represents HID connection
events, and is the event type passed to HID.onconnect
and
HID.ondisconnect
when an input report is received.
-
HIDConnectionEventInit
-
-
HIDDevice
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the
WebHID API
represents a HID Device. It
provides properties for accessing information about the device,
methods for opening and closing the connection, and the sending
and receiving of reports.
-
HIDDeviceFilter
-
-
HIDDeviceRequestOptions
-
-
HIDInputReportEvent
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the
WebHID API
is passed to
HIDDevice.oninputreport
when an input report is received from
any associated HID device.
-
HIDInputReportEventInit
-
-
HIDReportInfo
-
-
HIDReportItem
-
-
Highlight
-
-
HighlightRegistry
-
-
History
-
The interface allows manipulation of the browser session
history, that is the pages visited in the tab or frame that the
current page is loaded in.
-
HkdfParams
-
The dictionary of the Web Crypto API represents the object that
should be passed as the
algorithm
parameter into
SubtleCrypto.deriveKey()
, when using the HKDF algorithm.
-
HmacImportParams
-
The dictionary of the Web Crypto API represents the object that
should be passed as the
algorithm
parameter into
SubtleCrypto.importKey()
or SubtleCrypto.unwrapKey()
, when
generating a key for the HMAC algorithm.
-
HmacKeyAlgorithm
-
-
HmacKeyGenParams
-
The dictionary of the Web Crypto API represents the object that
should be passed as the
algorithm
parameter into
SubtleCrypto.generateKey()
, when generating a key for the HMAC
algorithm.
-
HTMLAllCollection
-
-
HTMLAnchorElement
-
The interface represents hyperlink elements and provides special
properties and methods (beyond those of the regular HTMLElement
object interface that they inherit from) for manipulating the
layout and presentation of such elements. This interface
corresponds to
<a>
element; not to be confused with <link>
,
which is represented by HTMLLinkElement)
-
HTMLAreaElement
-
The interface provides special properties and methods (beyond
those of the regular object HTMLElement interface it also has
available to it by inheritance) for manipulating the layout and
presentation of
<area>
elements.
-
HTMLAttributionSrcElementUtils
-
-
HTMLAudioElement
-
The interface provides access to the properties of
<audio>
elements, as well as methods to manipulate them.
This element is based on, and inherits properties and methods
from, the HTMLMediaElement interface.
-
HTMLBaseElement
-
The interface contains the base URI for a document. This object
inherits all of the properties and methods as described in the
HTMLElement interface.
-
HTMLBodyElement
-
The interface provides special properties (beyond those
inherited from the regular HTMLElement interface) for
manipulating
<body>
elements.
-
HTMLBRElement
-
The interface represents an HTML line break element (
<br>
). It
inherits from HTMLElement.
-
HTMLButtonElement
-
The interface provides properties and methods (beyond the
regular HTMLElement interface it also has available to it by
inheritance) for manipulating
<button>
elements.
-
HTMLCanvasElement
-
The interface provides properties and methods for manipulating
the layout and presentation of
<canvas>
elements. The interface
also inherits the properties and methods of the HTMLElement
interface.
-
HTMLCollection
-
The interface represents a generic collection (array-like object
similar to
arguments
) of elements (in document order) and
offers methods and properties for selecting from the list.
-
HTMLDataElement
-
The interface provides special properties (beyond the regular
HTMLElement interface it also has available to it by
inheritance) for manipulating
<data>
elements.
-
HTMLDataListElement
-
The interface provides special properties (beyond the
HTMLElement object interface it also has available to it by
inheritance) to manipulate
<datalist>
elements and their
content.
-
HTMLDetailsElement
-
The interface provides special properties (beyond the regular
HTMLElement interface it also has available to it by
inheritance) for manipulating
<details>
elements.
-
HTMLDialogElement
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface provides methods to manipulate
<dialog>
elements. It inherits properties and methods from the
HTMLElement interface.
-
HTMLDirectoryElement
-
-
HTMLDivElement
-
The interface provides special properties (beyond the regular
HTMLElement interface it also has available to it by
inheritance) for manipulating
<div>
elements.
-
HTMLDListElement
-
The interface provides special properties (beyond those of the
regular HTMLElement interface it also has available to it by
inheritance) for manipulating definition list (
<dl>
) elements.
-
HTMLElement
-
The interface represents any HTML element. Some elements
directly implement this interface, while others implement it via
an interface that inherits it.
-
HTMLEmbedElement
-
The interface provides special properties (beyond the regular
HTMLElement interface it also has available to it by
inheritance) for manipulating
<embed>
elements.
-
HTMLFieldSetElement
-
The interface provides special properties and methods (beyond
the regular HTMLElement interface it also has available to it
by inheritance) for manipulating the layout and presentation of
<fieldset>
elements.
-
HTMLFontElement
-
Deprecated: This feature is no longer recommended. Though some
browsers might still support it, it may have already been removed
from the relevant web standards, may be in the process of being
dropped, or may only be kept for compatibility purposes. Avoid
using it, and update existing code if possible; see the
compatibility table at the bottom of this page to guide your
decision. Be aware that this feature may cease to work at any
time.
Implements the document object model (DOM) representation of the
font element. The HTML Font Element
<font>
defines the font
size, font face and color of text.
-
HTMLFormControlsCollection
-
The interface represents a collection of HTML form control
elements.
It represents the lists returned by the HTMLFormElement
interface's
elements
property and the HTMLFieldSetElement
interface's elements
property.
This interface replaces one method from HTMLCollection, on
which it is based.
-
HTMLFormElement
-
The interface represents a
<form>
element in the DOM. It
allows access to—and, in some cases, modification of—aspects of
the form, as well as access to its component elements.
-
HTMLFrameElement
-
-
HTMLFrameSetElement
-
Deprecated: This feature is no longer recommended. Though some
browsers might still support it, it may have already been removed
from the relevant web standards, may be in the process of being
dropped, or may only be kept for compatibility purposes. Avoid
using it, and update existing code if possible; see the
compatibility table at the bottom of this page to guide your
decision. Be aware that this feature may cease to work at any
time.
The interface provides special properties (beyond those of the
regular HTMLElement interface they also inherit) for
manipulating
<frameset>
elements.
-
HTMLHeadElement
-
The interface contains the descriptive information, or metadata,
for a document. This object inherits all of the properties and
methods described in the HTMLElement interface.
-
HTMLHeadingElement
-
The interface represents the different heading elements,
<h1>
through <h6>
. It inherits methods and properties from the
HTMLElement interface.
-
HTMLHRElement
-
The interface provides special properties (beyond those of the
HTMLElement interface it also has available to it by
inheritance) for manipulating
<hr>
elements.
-
HTMLHtmlElement
-
The interface serves as the root node for a given HTML document.
This object inherits the properties and methods described in the
HTMLElement interface.
You can retrieve the object for a given document by reading the
value of the
document.documentElement
property.
-
HTMLHyperlinkElementUtils
-
-
HTMLIFrameElement
-
The interface provides special properties and methods (beyond
those of the HTMLElement interface it also has available to it
by inheritance) for manipulating the layout and presentation of
inline frame elements.
-
HTMLImageElement
-
The interface represents an HTML
<img>
element, providing the
properties and methods used to manipulate image elements.
-
HTMLInputElement
-
The interface provides special properties and methods for
manipulating the options, layout, and presentation of
<input>
elements.
-
HTMLLabelElement
-
The interface gives access to properties specific to
<label>
elements. It inherits methods and properties from the base
HTMLElement interface.
-
HTMLLegendElement
-
The is an interface allowing to access properties of the
<legend>
elements. It inherits properties and methods from the
HTMLElement interface.
-
HTMLLIElement
-
The interface exposes specific properties and methods (beyond
those defined by regular HTMLElement interface it also has
available to it by inheritance) for manipulating list elements.
-
HTMLLinkElement
-
The interface represents reference information for external
resources and the relationship of those resources to a document
and vice-versa (corresponds to
<link>
element; not to be
confused with <a>
, which is represented by
HTMLAnchorElement). This object inherits all of the properties
and methods of the HTMLElement interface.
-
HTMLMapElement
-
The interface provides special properties and methods (beyond
those of the regular object HTMLElement interface it also has
available to it by inheritance) for manipulating the layout and
presentation of map elements.
-
HTMLMarqueeElement
-
Deprecated: This feature is no longer recommended. Though some
browsers might still support it, it may have already been removed
from the relevant web standards, may be in the process of being
dropped, or may only be kept for compatibility purposes. Avoid
using it, and update existing code if possible; see the
compatibility table at the bottom of this page to guide your
decision. Be aware that this feature may cease to work at any
time.
The interface provides methods to manipulate
<marquee>
elements.
It inherits properties and methods from the HTMLElement
interface.
-
HTMLMediaElement
-
The interface adds to HTMLElement the properties and methods
needed to support basic media-related capabilities that are
common to audio and video.
The HTMLVideoElement and HTMLAudioElement elements both
inherit this interface.
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface provides special properties (beyond those defined
on the regular HTMLElement interface it also has available to
it by inheritance) for manipulating
<menu>
elements.
-
HTMLMetaElement
-
The interface contains descriptive metadata about a document. It
inherits all of the properties and methods described in the
HTMLElement interface.
-
HTMLMeterElement
-
The HTML
<meter>
elements expose the interface, which provides
special properties and methods (beyond the HTMLElement object
interface they also have available to them by inheritance) for
manipulating the layout and presentation of <meter>
elements.
-
HTMLModElement
-
The interface provides special properties (beyond the regular
methods and properties available through the HTMLElement
interface they also have available to them by inheritance) for
manipulating modification elements, that is
<del>
and <ins>
.
-
HTMLObjectElement
-
The interface provides special properties and methods (beyond
those on the HTMLElement interface it also has available to it
by inheritance) for manipulating the layout and presentation of
<object>
element, representing external resources.
-
HTMLOListElement
-
The interface provides special properties (beyond those defined
on the regular HTMLElement interface it also has available to
it by inheritance) for manipulating ordered list elements.
-
HTMLOptGroupElement
-
The interface provides special properties and methods (beyond
the regular HTMLElement object interface they also have
available to them by inheritance) for manipulating the layout and
presentation of
<optgroup>
elements.
-
HTMLOptionElement
-
The interface represents
<option>
elements and inherits all
properties and methods of the HTMLElement interface.
-
HTMLOptionsCollection
-
The interface represents a collection of
<option>
HTML
elements (in document order) and offers methods and properties
for selecting from the list as well as optionally altering its
items. This object is returned only by the options
property of
select.
-
HTMLOrSVGElement
-
-
HTMLOutputElement
-
The interface provides properties and methods (beyond those
inherited from HTMLElement) for manipulating the layout and
presentation of
<output>
elements.
-
HTMLParagraphElement
-
The interface provides special properties (beyond those of the
regular HTMLElement object interface it inherits) for
manipulating
<p>
elements.
-
HTMLParamElement
-
The interface provides special properties (beyond those of the
regular HTMLElement object interface it inherits) for
manipulating
<param>
elements, representing a pair of a key and
a value that acts as a parameter for an <object>
element.
-
HTMLPictureElement
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface represents a
<picture>
HTML element. It doesn't
implement specific properties or methods.
-
HTMLPortalElement
-
-
HTMLPreElement
-
The interface exposes specific properties and methods (beyond
those of the HTMLElement interface it also has available to it
by inheritance) for manipulating a block of preformatted text
(
<pre>
).
-
HTMLProgressElement
-
The interface provides special properties and methods (beyond
the regular HTMLElement interface it also has available to it
by inheritance) for manipulating the layout and presentation of
<progress>
elements.
-
HTMLQuoteElement
-
The interface provides special properties and methods (beyond
the regular HTMLElement interface it also has available to it
by inheritance) for manipulating quoting elements, like
<blockquote>
and <q>
, but not the <cite>
element.
-
HTMLScriptElement
-
HTML
<script>
elements expose the interface, which provides
special properties and methods for manipulating the behavior and
execution of <script>
elements (beyond the inherited
HTMLElement interface).
JavaScript files should be served with the
application/javascript
MIME type, but browsers are lenient and
block them only if the script is served with an image type
(image/*
), video type (video/*
), audio type (audio/*
), or
text/csv
. If the script is blocked, its element receives an
error
event; otherwise, it receives a load
event.
-
HTMLSelectElement
-
The interface represents a
<select>
HTML Element. These
elements also share all of the properties and methods of other
HTML elements via the HTMLElement interface.
-
HTMLSlotElement
-
The interface of the Shadow DOM API enables access to the name
and assigned nodes of an HTML
<slot>
element.
-
HTMLSourceElement
-
The interface provides special properties (beyond the regular
HTMLElement object interface it also has available to it by
inheritance) for manipulating
<source>
elements.
-
HTMLSpanElement
-
The interface represents a
<span>
element and derives from the
HTMLElement interface, but without implementing any additional
properties or methods.
-
HTMLStyleElement
-
The interface represents a
<style>
element. It inherits
properties and methods from its parent, HTMLElement.
This interface doesn't allow to manipulate the CSS it contains
(in most case). To manipulate CSS, see Using dynamic styling
information for an overview of the objects used to manipulate
specified CSS properties using the DOM.
-
HTMLTableCaptionElement
-
The interface special properties (beyond the regular
HTMLElement interface it also has available to it by
inheritance) for manipulating table caption elements.
-
HTMLTableCellElement
-
The interface provides special properties and methods (beyond
the regular HTMLElement interface it also has available to it
by inheritance) for manipulating the layout and presentation of
table cells, either header or data cells, in an HTML document.
-
HTMLTableColElement
-
The interface provides properties for manipulating single or
grouped table column elements.
-
HTMLTableElement
-
The interface provides special properties and methods (beyond
the regular HTMLElement object interface it also has available
to it by inheritance) for manipulating the layout and
presentation of tables in an HTML document.
-
HTMLTableRowElement
-
The interface provides special properties and methods (beyond
the HTMLElement interface it also has available to it by
inheritance) for manipulating the layout and presentation of rows
in an HTML table.
-
HTMLTableSectionElement
-
The interface provides special properties and methods (beyond
the HTMLElement interface it also has available to it by
inheritance) for manipulating the layout and presentation of
sections, that is headers, footers and bodies, in an HTML table.
-
HTMLTemplateElement
-
The interface enables access to the contents of an HTML
<template>
element.
-
HTMLTextAreaElement
-
The interface provides special properties and methods for
manipulating the layout and presentation of
<textarea>
elements.
-
HTMLTimeElement
-
The interface provides special properties (beyond the regular
HTMLElement interface it also has available to it by
inheritance) for manipulating
<time>
elements.
-
HTMLTitleElement
-
The interface contains the title for a document. This element
inherits all of the properties and methods of the HTMLElement
interface.
-
HTMLTrackElement
-
The interface represents an HTML
<track>
element within the
DOM. This element can be used as a child of either <audio>
or
<video>
to specify a text track containing information such as
closed captions or subtitles.
-
HTMLUListElement
-
The interface provides special properties (beyond those defined
on the regular HTMLElement interface it also has available to
it by inheritance) for manipulating unordered list elements.
-
HTMLUnknownElement
-
The interface represents an invalid HTML element and derives
from the HTMLElement interface, but without implementing any
additional properties or methods.
-
HTMLVideoElement
-
The interface provides special properties and methods for
manipulating video objects. It also inherits properties and
methods of HTMLMediaElement and HTMLElement.
The list of supported media formats varies from one browser to
the other. You should either provide your video in a single
format that all the relevant browsers supports, or provide
multiple video sources in enough different formats that all the
browsers you need to support are covered.
-
IDBCursor
-
Note: Not to be confused with IDBCursorWithValue which is
just an interface with an additional
value
property.
-
IDBCursorWithValue
-
The interface of the IndexedDB API represents a cursor for
traversing or iterating over multiple records in a database. It
is the same as the IDBCursor, except that it includes the
value property.
The cursor has a source that indicates which index or object
store it is iterating over. It has a position within the range,
and moves in a direction that is increasing or decreasing in the
order of record keys. The cursor enables an application to
asynchronously process all the records in the cursor's range.
You can have an unlimited number of cursors at the same time.
You always get the same object representing a given cursor.
Operations are performed on the underlying index or object store.
Note: This feature is available in Web Workers
-
IDBDatabase
-
The interface of the IndexedDB API provides a connection to a
database; you can use an object to open a transaction on your
database then create, manipulate, and delete objects (data) in
that database. The interface provides the only way to get and
manage versions of the database.
Note: This feature is available in Web Workers
Note: Everything you do in IndexedDB always happens in the
context of a transaction, representing interactions with data in
the database. All objects in IndexedDB — including object stores,
indexes, and cursors — are tied to a particular transaction.
Thus, you cannot execute commands, access data, or open anything
outside of a transaction.
-
IDBDatabaseInfo
-
-
IDBFactory
-
The interface of the IndexedDB API lets applications
asynchronously access the indexed databases. The object that
implements the interface is
window.indexedDB
. You open — that
is, create and access — and delete a database with this object,
and not directly with .
Note: This feature is available in Web Workers
-
IDBIndex
-
interface of the IndexedDB API provides asynchronous access to
an index in a database. An index is a kind of object store for
looking up records in another object store, called the referenced
object store. You use this interface to retrieve data.
You can retrieve records in an object store through the primary
key or by using an index. An index lets you look up records in an
object store using properties of the values in the object stores
records other than the primary key
The index is a persistent key-value storage where the value part
of its records is the key part of a record in the referenced
object store. The records in an index are automatically populated
whenever records in the referenced object store are inserted,
updated, or deleted. Each record in an index can point to only
one record in its referenced object store, but several indexes
can reference the same object store. When the object store
changes, all indexes that refers to the object store are
automatically updated.
You can grab a set of keys within a range. To learn more, see
IDBKeyRange.
Note: This feature is available in Web Workers
-
IDBIndexParameters
-
-
IDBKeyRange
-
The interface of the IndexedDB API represents a continuous
interval over some data type that is used for keys. Records can
be retrieved from IDBObjectStore and IDBIndex objects using
keys or a range of keys. You can limit the range using lower and
upper bounds. For example, you can iterate over all values of a
key in the value range A–Z.
A key range can be a single value or a range with upper and
lower bounds or endpoints. If the key range has both upper and
lower bounds, then it is bounded; if it has no bounds, it is
unbounded. A bounded key range can either be open (the endpoints
are excluded) or closed (the endpoints are included). To retrieve
all keys within a certain range, you can use the following code
constructs:
-
IDBObjectStore
-
The interface of the IndexedDB API represents an object store in
a database. Records within an object store are sorted according
to their keys. This sorting enables fast insertion, look-up, and
ordered retrieval.
Note: This feature is available in Web Workers
-
IDBObjectStoreParameters
-
-
IDBOpenDBRequest
-
The interface of the IndexedDB API provides access to the
results of requests to open or delete databases (performed using
IDBFactory.open
and IDBFactory.deleteDatabase
), using
specific event handler attributes.
Note: This feature is available in Web Workers
-
IDBRequest
-
The interface of the IndexedDB API provides access to results of
asynchronous requests to databases and database objects using
event handler attributes. Each reading and writing operation on a
database is done using a request.
The request object does not initially contain any information
about the result of the operation, but once information becomes
available, an event is fired on the request, and the information
becomes available through the properties of the instance.
All asynchronous operations immediately return an instance. Each
request has a readyState that is set to the
'pending'
state;
this changes to 'done'
when the request is completed or fails.
When the state is set to done
, every request returns a result
and an error, and an event is fired on the request. When the
state is still pending
, any attempt to access the result or
error raises an InvalidStateError
exception.
In plain words, all asynchronous methods return a request
object. If the request has been completed successfully, the
result is made available through the result property and an
event indicating success is fired at the request
(IDBRequest.onsuccess
). If an error occurs while performing the
operation, the exception is made available through the result
property and an error event is fired (IDBRequest.onerror
).
The interface IDBOpenDBRequest is derived from .
Note: This feature is available in Web Workers
-
IDBTransaction
-
The interface of the IndexedDB API provides a static,
asynchronous transaction on a database using event handler
attributes. All reading and writing of data is done within
transactions. You use IDBDatabase to start transactions, to set
the mode of the transaction (e.g. is it
readonly
or
readwrite
), and you access an IDBObjectStore to make a
request. You can also use an object to abort transactions.
Note: This feature is available in Web Workers
-
IDBTransactionOptions
-
-
IDBVersionChangeEvent
-
The interface of the IndexedDB API indicates that the version of
the database has changed, as the result of an
IDBOpenDBRequest.onupgradeneeded
event handler function.
Note: This feature is available in Web Workers
-
IDBVersionChangeEventInit
-
-
IdentityCredential
-
-
IdentityCredentialLogoutRPsRequest
-
-
IdentityCredentialRequestOptions
-
-
IdentityProvider
-
-
IdleDeadline
-
The interface is used as the data type of the input parameter to
idle callbacks established by calling
Window.requestIdleCallback()
. It offers a method,
timeRemaining()
, which lets you determine how much longer the
user agent estimates it will remain idle and a property,
didTimeout, which lets you determine if your callback is
executing because its timeout duration expired.
To learn more about how request callbacks work, see
Collaborative Scheduling of Background Tasks.
-
IdleDetector
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the Idle
Detection API provides methods and events for detecting user
activity on a device or screen.
This interface requires a secure context.
-
IdleOptions
-
-
IdleRequestOptions
-
-
IIRFilterNode
-
The interface of the Web Audio API is a AudioNode processor
which implements a general infinite impulse response (IIR)
filter; this type of filter can be used to implement tone control
devices and graphic equalizers as well. It lets the parameters of
the filter response be specified, so that it can be tuned as
needed.
-
IIRFilterOptions
-
-
ImageBitmap
-
The interface represents a bitmap image which can be drawn to a
<canvas>
without undue latency. It can be created from a
variety of source objects using the createImageBitmap()
factory
method. provides an asynchronous and resource efficient pathway
to prepare textures for rendering in WebGL.
-
ImageBitmapOptions
-
-
ImageBitmapRenderingContext
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface is a canvas rendering context that provides the
functionality to replace the canvas's contents with the given
ImageBitmap. Its context id (the first argument to
HTMLCanvasElement.getContext()
or
OffscreenCanvas.getContext()
) is "bitmaprenderer"
.
This interface is available in both the window and the worker
context.
-
ImageBitmapRenderingContextSettings
-
-
ImageCapture
-
The interface of the MediaStream Image Capture API provides
methods to enable the capture of images or photos from a camera
or other photographic device. It provides an interface for
capturing images from a photographic device referenced through a
valid MediaStreamTrack.
-
ImageData
-
The interface represents the underlying pixel data of an area of
a
<canvas>
element.
It is created using the ImageData() constructor or creator
methods on the CanvasRenderingContext2D object associated with
a canvas: createImageData()
and getImageData()
. It can also
be used to set a part of the canvas by using putImageData()
.
Note: This feature is available in Web Workers
-
ImageDataSettings
-
-
ImageDecodeOptions
-
-
ImageDecoder
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the WebCodecs API provides a way to unpack and
decode encoded image data.
-
ImageDecodeResult
-
-
ImageDecoderInit
-
-
ImageEncodeOptions
-
-
ImageObject
-
-
ImageResource
-
-
ImageTrack
-
The interface of the WebCodecs API represents an individual
image track.
-
ImageTrackList
-
The interface of the WebCodecs API represents a list of image
tracks.
-
Ink
-
-
InkPresenter
-
-
InkPresenterParam
-
-
InkTrailStyle
-
-
InnerHTML
-
-
InputDeviceCapabilities
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the Input Device Capabilities API provides
information about the physical device or a group of related
devices responsible for generating input events. Events caused by
the same physical input device get the same instance of this
object, but the converse isn't true. For example, two mice with
the same capabilities in a system may appear as a single
instance.
In some instances, represents the capabilities of logical
devices rather than physical devices. This allows, for example,
touchscreen keyboards and physical keyboards to be represented
the same way when they produce the same input.
-
InputDeviceCapabilitiesInit
-
-
InputDeviceInfo
-
The interface of the Media Streams API gives access to the
capabilities of the input device that it represents.
objects are returned by
MediaDevices.enumerateDevices()
if
the returned device is an audio or video input device.
-
InputEvent
-
The interface represents an event notifying the user of editable
content changes.
-
InputEventInit
-
-
Instance
-
-
InteractionCounts
-
-
IntersectionObserver
-
The interface of the Intersection Observer API provides a way to
asynchronously observe changes in the intersection of a target
element with an ancestor element or with a top-level document's
viewport. The ancestor element or viewport is referred to as the
root.
When an is created, it's configured to watch for given ratios of
visibility within the root. The configuration cannot be changed
once the is created, so a given observer object is only useful
for watching for specific changes in degree of visibility;
however, you can watch multiple target elements with the same
observer.
-
IntersectionObserverEntry
-
The interface of the Intersection Observer API describes the
intersection between the target element and its root container at
a specific moment of transition.
Instances of are delivered to an IntersectionObserver callback
in its
entries
parameter; otherwise, these objects can only be
obtained by calling IntersectionObserver.takeRecords()
.
-
IntersectionObserverEntryInit
-
-
IntersectionObserverInit
-
-
InterventionReportBody
-
The interface of the Reporting API represents the body of an
intervention report.
An intervention report is generated when usage of a feature in a
web document has been blocked by the browser for reasons such as
security, performance, or user annoyance. So for example, a
script was been stopped because it was significantly slowing down
the browser, or the browser's autoplay policy blocked audio from
playing without a user gesture to trigger it.
A deprecation report is generated when a deprecated feature (for
example a deprecated API method) is used on a document being
observed by a ReportingObserver. In addition to the support of
this API, receiving useful intervention warnings relies on
browser vendors adding these warnings for the relevant features.
-
IntrinsicSizes
-
-
IntrinsicSizesResultOptions
-
-
IsInputPendingOptions
-
-
ItemDetails
-
-
JsonLd
-
-
JsonLdError
-
-
JsonLdFramingError
-
-
JsonLdOptions
-
-
JsonLdProcessor
-
-
JsonWebKey
-
-
KeyAlgorithm
-
-
Keyboard
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the Keyboard API provides functions that
retrieve keyboard layout maps and toggle capturing of key presses
from the physical keyboard.
A list of valid code values is found in the UI Events
KeyboardEvent code Values spec.
-
KeyboardEvent
-
objects describe a user interaction with the keyboard; each
event describes a single interaction between the user and a key
(or combination of a key with modifier keys) on the keyboard. The
event type (
keydown
, keypress
, or keyup
) identifies what
kind of keyboard activity occurred.
-
KeyboardEventInit
-
-
KeyboardLayoutMap
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the Keyboard API is a map-like object with
functions for retrieving the string associated with specific
physical keys.
A list of valid keys is found in the UI Events KeyboardEvent
code Values specification.
-
KeyframeAnimationOptions
-
-
KeyframeEffect
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the Web Animations API lets us create sets of
animatable properties and values, called keyframes. These can
then be played using the Animation() constructor.
-
KeyframeEffectOptions
-
-
KeySystemTrackConfiguration
-
-
KHRParallelShaderCompile
-
The extension is part of the WebGL API and enables a
non-blocking poll operation, so that compile/link status
availability (
COMPLETION_STATUS_KHR
) can be queried without
potentially incurring stalls. In other words you can check the
status of your shaders compiling without blocking the runtime.
WebGL extensions are available using the
WebGLRenderingContext.getExtension()
method. For more
information, see also Using Extensions in the WebGL tutorial.
-
Landmark
-
-
LargestContentfulPaint
-
The interface of the
Largest Contentful Paint API
provides
details about the largest image or text paint before user input
on a web page. The timing of this paint is a good heuristic for
when the main page content is available during load.
-
LaunchParams
-
-
LaunchQueue
-
-
LayoutChild
-
-
LayoutConstraints
-
-
LayoutConstraintsOptions
-
-
LayoutEdges
-
-
LayoutFragment
-
-
LayoutOptions
-
-
LayoutShift
-
The interface of the Layout Instability API provides insights
into the stability of web pages based on movements of the
elements on the page.
-
LayoutShiftAttribution
-
The interface of the Layout Instability API provides debugging
information about elements which have shifted.
Instances of are returned in an array by calling
LayoutShift.sources
.
-
LayoutWorkletGlobalScope
-
-
LinearAccelerationReadingValues
-
-
LinearAccelerationSensor
-
The interface of the Sensor APIs provides on each reading the
acceleration applied to the device along all three axes, but
without the contribution of gravity.
To use this sensor, the user must grant permission to the
'accelerometer'
device sensor through the Permissions API.
If a feature policy blocks use of a feature it is because your
code is inconsistent with the policies set on your server. This
is not something that would ever be shown to a user. The
Feature-Policy
HTTP header article contains implementation
instructions.
-
LinkStyle
-
-
LoadDocumentOptions
-
-
Location
-
The interface represents the location (URL) of the object it is
linked to. Changes done on it are reflected on the object it
relates to. Both the Document and Window interface have such
a linked , accessible via
Document.location
and
Window.location
respectively.
-
Lock
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
-
LockInfo
-
-
LockManager
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the Web Locks API provides methods for
requesting a new Lock object and querying for an existing
Lock object. To get an instance of , call
navigator.locks
.
-
LockManagerSnapshot
-
-
LockOptions
-
-
Magnetometer
-
The interface of the Sensor APIs provides information about the
magnetic field as detected by the device's primary magnetometer
sensor.
To use this sensor, the user must grant permission to the
'magnetometer'
device sensor through the Permissions API.
If a feature policy blocks use of a feature, it's because your
code is inconsistent with the policies set on your server. This
is not something that would ever be shown to a user. The
Feature-Policy
HTTP header article contains implementation
instructions.
-
MagnetometerReadingValues
-
-
MagnetometerSensorOptions
-
-
MathMLElement
-
The interface represents any MathML element.
-
MediaCapabilities
-
The interface of the Media Capabilities API provides information
about the decoding abilities of the device, system and browser.
The API can be used to query the browser about the decoding
abilities of the device based on codecs, profile, resolution, and
bitrates. The information can be used to serve optimal media
streams to the user and determine if playback should be smooth
and power efficient.
The information is accessed through the
mediaCapabilities
property of the Navigator interface.
-
MediaCapabilitiesDecodingInfo
-
-
MediaCapabilitiesEncodingInfo
-
-
MediaCapabilitiesInfo
-
-
MediaCapabilitiesKeySystemConfiguration
-
-
MediaConfiguration
-
The MediaCapabilities dictionary of the Media Capabilities API
describes how media and audio files must be configured, or
defined, to be passed as a parameter of the
MediaCapabilities.encodingInfo()
and
MediaCapabilities.encodingInfo()
methods.
-
MediaDecodingConfiguration
-
The dictionary of the Media Capabilities API is used to define
the type of media being tested when calling
MediaCapabilities.decodingInfo()
to query whether a specific
media configuration is supported, smooth, and/or power efficient.
-
MediaDeviceInfo
-
The interface contains information that describes a single media
input or output device.
The list of devices obtained by calling
navigator.mediaDevices.enumerateDevices()
is an array of
objects, one per media device.
-
MediaDevices
-
The interface provides access to connected media input devices
like cameras and microphones, as well as screen sharing. In
essence, it lets you obtain access to any hardware source of
media data.
-
MediaElementAudioSourceNode
-
The interface represents an audio source consisting of an HTML5
<audio>
or <video>
element. It is an AudioNode that acts as
an audio source.
A MediaElementSourceNode
has no inputs and exactly one output,
and is created using the
AudioContext.createMediaElementSource()
method. The amount of
channels in the output equals the number of channels of the audio
referenced by the HTMLMediaElement used in the creation of the
node, or is 1 if the HTMLMediaElement has no audio.
-
MediaElementAudioSourceOptions
-
-
MediaEncodingConfiguration
-
The dictionary of the Media Capabilities API is used to define
the type of media being tested when calling
MediaCapabilities.encodingInfo()
to query whether a specific
media configuration is supported, smooth, and/or power efficient.
-
MediaEncryptedEvent
-
-
MediaEncryptedEventInit
-
-
MediaError
-
The interface represents an error which occurred while handling
media in an HTML media element based on HTMLMediaElement, such
as
<audio>
or <video>
.
A object describes the error in general terms using a numeric
code categorizing the kind of error, and a message, which
provides specific diagnostics about what went wrong.
-
MediaImage
-
The Media Session API's dictionary describes the images
associated with a media resource's MediaMetadata.
Its contents can be displayed by the user agent in appropriate
contexts like in a player interface to show the current playing
video or audio track.
-
MediaKeyMessageEvent
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the EncryptedMediaExtensions API contains the
content and related data when the content decryption module
generates a message for the session.
-
MediaKeyMessageEventInit
-
-
MediaKeys
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of EncryptedMediaExtensions API represents a set
of keys that an associated HTMLMediaElement can use for
decryption of media data during playback.
-
MediaKeySession
-
The interface of the EncryptedMediaExtensions API represents a
context for message exchange with a content decryption module
(CDM).
-
MediaKeyStatusMap
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the EncryptedMediaExtensions API is a read-only
map of media key statuses by key IDs.
-
MediaKeySystemAccess
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the EncryptedMediaExtensions API provides
access to a Key System for decryption and/or a content protection
provider. You can request an instance of this object using the
Navigator.requestMediaKeySystemAccess()
method.
-
MediaKeySystemConfiguration
-
-
MediaKeySystemMediaCapability
-
-
MediaList
-
The interface represents the media queries of a stylesheet, e.g.
those set using a
<link>
element's media
attribute.
-
MediaMetadata
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the Media Session API allows a web page to
provide rich media metadata for display in a platform UI.
-
MediaMetadataInit
-
-
MediaPositionState
-
-
MediaQueryList
-
A object stores information on a media query applied to a
document, with support for both immediate and event-driven
matching against the state of the document.
You can create a by calling
matchMedia()
on the window
object. The resulting object handles sending notifications to
listeners when the media query state changes (i.e. when the media
query test starts or stops evaluating to true
).
This is very useful for adaptive design, since this makes it
possible to observe a document to detect when its media queries
change, instead of polling the values periodically, and allows
you to programmatically make changes to a document based on media
query status.
-
MediaQueryListEvent
-
The object stores information on the changes that have happened
to a MediaQueryList object — instances are available as the
event object on a function referenced by a
MediaQueryList.onchange
property or
MediaQueryList.addListener()
call.
-
MediaQueryListEventInit
-
-
MediaRecorder
-
The interface of the MediaStream Recording API provides
functionality to easily record media. It is created using the
MediaRecorder() constructor.
-
MediaRecorderOptions
-
-
MediaSession
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the Media Session API allows a web page to
provide custom behaviors for standard media playback
interactions, and to report metadata that can be sent by the user
agent to the device or operating system for presentation in
standardized user interface elements.
For example, a smartphone might have a standard panel in its
lock screen that provides controls for media playback and
information display. A browser on the device can use to make
browser playback controllable from that standard/global user
interface.
-
MediaSessionActionDetails
-
-
MediaSettingsRange
-
-
MediaSource
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the Media Source Extensions API represents a
source of media data for an HTMLMediaElement object. A object
can be attached to a HTMLMediaElement to be played in the user
agent.
-
MediaSourceHandle
-
-
MediaStream
-
The interface represents a stream of media content. A stream
consists of several tracks, such as video or audio tracks. Each
track is specified as an instance of MediaStreamTrack.
You can obtain a object either by using the constructor or by
calling functions such as
MediaDevices.getUserMedia()
,
MediaDevices.getDisplayMedia()
, or
HTMLCanvasElement.captureStream()
.
Some user agents subclass this interface to provide more precise
information or functionality, like in
CanvasCaptureMediaStreamTrack.
-
MediaStreamAudioDestinationNode
-
The interface represents an audio destination consisting of a
WebRTC MediaStream with a single
AudioMediaStreamTrack
, which
can be used in a similar way to a MediaStream obtained from
Navigator.getUserMedia()
.
It is an AudioNode that acts as an audio destination, created
using the AudioContext.createMediaStreamDestination()
method.
-
MediaStreamAudioSourceNode
-
The interface is a type of AudioNode which operates as an
audio source whose media is received from a MediaStream
obtained using the WebRTC or Media Capture and Streams APIs.
This media could be from a microphone (through
getUserMedia()
)
or from a remote peer on a WebRTC call (using the
RTCPeerConnection's audio tracks).
A has no inputs and exactly one output, and is created using the
AudioContext.createMediaStreamSource()
method.
The takes the audio from the first MediaStreamTrack whose
kind
attribute's value is audio
. See Track ordering for more
information about the order of tracks.
The number of channels output by the node matches the number of
tracks found in the selected audio track.
-
MediaStreamAudioSourceOptions
-
-
MediaStreamConstraints
-
-
MediaStreamTrack
-
The interface represents a single media track within a stream;
typically, these are audio or video tracks, but other track types
may exist as well.
-
MediaStreamTrackAudioSourceNode
-
The interface is a type of AudioNode which represents a source
of audio data taken from a specific MediaStreamTrack obtained
through the WebRTC or Media Capture and Streams APIs.
The audio itself might be input from a microphone or other audio
sampling device, or might be received through a
RTCPeerConnection, among other possible options.
A has no inputs and exactly one output, and is created using the
AudioContext.createMediaStreamTrackSource()
method. This
interface is similar to MediaStreamAudioSourceNode, except it
lets you specifically state the track to use, rather than
assuming the first audio track on a stream.
-
MediaStreamTrackAudioSourceOptions
-
-
MediaStreamTrackEvent
-
The interface represents events which indicate that a
MediaStream has had tracks added to or removed from the stream
through calls to Media Stream API methods. These events are sent
to the stream when these changes occur.
-
MediaStreamTrackEventInit
-
-
MediaStreamTrackProcessor
-
The interface of the
Insertable Streams for MediaStreamTrack
API
consumes a MediaStreamTrack object's source and generates
a stream of media frames.
-
MediaStreamTrackProcessorInit
-
-
MediaTrackCapabilities
-
-
MediaTrackConstraints
-
The dictionary is used to describe a set of capabilities and the
value or values each can take on. A constraints dictionary is
passed into
applyConstraints()
to allow a script to establish a
set of exact (required) values or ranges and/or preferred values
or ranges of values for the track, and the most
recently-requested set of custom constraints can be retrieved by
calling getConstraints()
.
-
MediaTrackConstraintSet
-
-
MediaTrackSettings
-
The dictionary is used to return the current values configured
for each of a MediaStreamTrack's settings. These values will
adhere as closely as possible to any constraints previously
described using a MediaTrackConstraints object and set using
applyConstraints()
, and will adhere to the default constraints
for any properties whose constraints haven't been changed, or
whose customized constraints couldn't be matched.
To learn more about how constraints and settings work, see
Capabilities, constraints, and settings.
-
MediaTrackSupportedConstraints
-
The dictionary establishes the list of constrainable properties
recognized by the user agent or browser in its implementation of
the MediaStreamTrack object. An object conforming to is
returned by
MediaDevices.getSupportedConstraints()
.
Because of the way interface definitions in WebIDL work, if a
constraint is requested but not supported, no error will occur.
Instead, the specified constraints will be applied, with any
unrecognized constraints stripped from the request.That can lead
to confusing and hard to debug errors, so be sure to use
getSupportedConstraints()
to retrieve this information before
attempting to establish constraints if you need to know the
difference between silently ignoring a constraint and a
constraint being accepted.
An actual constraint set is described using an object based on
the MediaTrackConstraints dictionary.
To learn more about how constraints work, see Capabilities,
constraints, and settings.
-
Memory
-
-
MemoryAttribution
-
-
MemoryAttributionContainer
-
-
MemoryBreakdownEntry
-
-
MemoryDescriptor
-
-
MemoryMeasurement
-
-
MessageChannel
-
The interface of the Channel Messaging API allows us to create a
new message channel and send data through it via its two
MessagePort properties.
Note: This feature is available in Web Workers
-
MessageEvent
-
The interface represents a message received by a target object.
This is used to represent messages in:
-
MessageEventInit
-
-
MessagePort
-
The interface of the Channel Messaging API represents one of the
two ports of a MessageChannel, allowing messages to be sent
from one port and listening out for them arriving at the other.
Note: This feature is available in Web Workers
-
MIDIAccess
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the Web MIDI API provides methods for listing
MIDI input and output devices, and obtaining access to those
devices.
-
MIDIConnectionEvent
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the Web MIDI API is the event passed to the
onstatechange
event handler of the MIDIAccess interface and
the onstatechange
event of the MIDIPort interface. This
occurs any time a new port becomes available, or when a
previously available port becomes unavailable. For example, this
event is fired whenever a MIDI device is either plugged in to or
unplugged from a computer.
-
MIDIConnectionEventInit
-
-
MIDIInput
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the Web MIDI API receives messages from a MIDI
input port.
-
MIDIInputMap
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The read-only interface of the Web MIDI API provides a
Map-like interface to the currently available MIDI input ports.
Though it works generally like a map, because it is read-only it
does not contain
clear()
, delete(), or set()
functions.
-
MIDIMessageEvent
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the Web MIDI API represents the event passed to
the
onmidimessage
event handler of the MIDIInput interface. A
midimessage
event is fired every time a MIDI message is sent
from a device represented by a MIDIInput, for example when a
MIDI keyboard key is pressed, a knob is tweaked, or a slider is
moved.
-
MIDIMessageEventInit
-
-
MIDIOptions
-
-
MIDIOutput
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the Web MIDI API provides methods to add
messages to the queue of an output device, and to clear the queue
of messages.
-
MIDIOutputMap
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The read-only interface of the Web MIDI API provides a
Map-like interface to the currently available MIDI output
ports. Although it works like a map, because it is read-only, it
does not contain
clear()
, delete(), or set()
functions.
-
MidiPermissionDescriptor
-
-
MIDIPort
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the Web MIDI API represents a MIDI input or
output port.
A instance is created when a new MIDI device is connected.
Therefore it has no constructor.
-
MimeType
-
Deprecated: This feature is no longer recommended. Though some
browsers might still support it, it may have already been removed
from the relevant web standards, may be in the process of being
dropped, or may only be kept for compatibility purposes. Avoid
using it, and update existing code if possible; see the
compatibility table at the bottom of this page to guide your
decision. Be aware that this feature may cease to work at any
time.
The interface provides contains information about a MIME type
associated with a particular plugin.
Navigator.mimeTypes
returns an array of this object.
-
MimeTypeArray
-
Deprecated: This feature is no longer recommended. Though some
browsers might still support it, it may have already been removed
from the relevant web standards, may be in the process of being
dropped, or may only be kept for compatibility purposes. Avoid
using it, and update existing code if possible; see the
compatibility table at the bottom of this page to guide your
decision. Be aware that this feature may cease to work at any
time.
The interface returns an array of MimeType instances, each of
which contains information about a supported browser plugins.
This object is returned by
Navigator.mimeTypes
.
-
Ml
-
-
MLBatchNormalizationOptions
-
-
MLBufferResourceView
-
-
MLClampOptions
-
-
MLCommandEncoder
-
-
MLContext
-
-
MLContextOptions
-
-
MLConv2dOptions
-
-
MLConvTranspose2dOptions
-
-
MLEluOptions
-
-
MLGemmOptions
-
-
MLGraph
-
-
MLGraphBuilder
-
-
MLGruCellOptions
-
-
MLGruOptions
-
-
MLHardSigmoidOptions
-
-
MLInstanceNormalizationOptions
-
-
MLLeakyReluOptions
-
-
MLLinearOptions
-
-
MLOperand
-
-
MLOperandDescriptor
-
-
MLOperator
-
-
MLPadOptions
-
-
MLPool2dOptions
-
-
MLReduceOptions
-
-
MLResample2dOptions
-
-
MLSliceOptions
-
-
MLSoftplusOptions
-
-
MLSplitOptions
-
-
MLSqueezeOptions
-
-
MLTransposeOptions
-
-
MockCameraConfiguration
-
-
MockCaptureDeviceConfiguration
-
-
MockCapturePromptResultConfiguration
-
-
MockMicrophoneConfiguration
-
-
MockSensor
-
-
MockSensorConfiguration
-
-
MockSensorReadingValues
-
-
Module
-
-
ModuleExportDescriptor
-
-
ModuleImportDescriptor
-
-
MouseEvent
-
The interface represents events that occur due to the user
interacting with a pointing device (such as a mouse).
Common events using this interface include
click
, dblclick
,
mouseup
, mousedown
.
derives from UIEvent, which in turn derives from Event.
Though the MouseEvent.initMouseEvent()
method is kept for
backward compatibility, creating of a object should be done using
the MouseEvent() constructor.
-
MouseEventInit
-
-
MultiCacheQueryOptions
-
-
MutationEvent
-
Deprecated: This feature is no longer recommended. Though some
browsers might still support it, it may have already been removed
from the relevant web standards, may be in the process of being
dropped, or may only be kept for compatibility purposes. Avoid
using it, and update existing code if possible; see the
compatibility table at the bottom of this page to guide your
decision. Be aware that this feature may cease to work at any
time.
-
MutationObserver
-
The interface provides the ability to watch for changes being
made to the DOM tree. It is designed as a replacement for the
older Mutation Events feature, which was part of the DOM3 Events
specification.
-
MutationObserverInit
-
-
MutationRecord
-
A represents an individual DOM mutation. It is the object that
is inside the array passed to MutationObserver's callback.
-
NamedFlow
-
-
NamedFlowMap
-
-
NamedNodeMap
-
The interface represents a collection of Attr objects. Objects
inside a are not in any particular order, unlike NodeList,
although they may be accessed by an index as in an array.
A object is live and will thus be auto-updated if changes are
made to its contents internally or elsewhere.
-
NavigateEvent
-
-
NavigateEventInit
-
-
Navigation
-
-
NavigationCurrentEntryChangeEvent
-
-
NavigationCurrentEntryChangeEventInit
-
-
NavigationDestination
-
-
NavigationEvent
-
-
NavigationEventInit
-
-
NavigationHistoryEntry
-
-
NavigationInterceptOptions
-
-
NavigationNavigateOptions
-
-
NavigationOptions
-
-
NavigationPreloadManager
-
The interface of the Service Worker API provides methods for
managing the preloading of resources with a service worker.
-
NavigationPreloadState
-
-
NavigationReloadOptions
-
-
NavigationResult
-
-
NavigationTransition
-
-
NavigationUpdateCurrentEntryOptions
-
-
Navigator
-
The interface represents the state and the identity of the user
agent. It allows scripts to query it and to register themselves
to carry on some activities.
A object can be retrieved using the read-only
window.navigator
property.
-
NavigatorAutomationInformation
-
-
NavigatorBadge
-
-
NavigatorConcurrentHardware
-
-
NavigatorContentUtils
-
-
NavigatorCookies
-
-
NavigatorDeviceMemory
-
-
NavigatorGPU
-
-
NavigatorID
-
-
NavigatorLanguage
-
-
NavigatorLocks
-
-
NavigatorML
-
-
NavigatorNetworkInformation
-
-
NavigatorOnLine
-
-
NavigatorPlugins
-
-
NavigatorStorage
-
-
NavigatorUA
-
-
NavigatorUABrandVersion
-
-
NavigatorUAData
-
The interface of the
User-Agent Client Hints API
returns
information about the browser and operating system of a user.
An instance of this object is returned by calling
Navigator.userAgentData
. Therefore, this interface has no
constructor.
-
NDEFMakeReadOnlyOptions
-
-
NDEFMessage
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting
browsers.Experimental: This is an experimental technologyCheck
the Browser compatibility table carefully before using this in
production.
The interface of the Web NFC API represents the content of an
NDEF message that has been read from or could be written to an
NFC tag. An instance is acquired by calling the NDEFMessage()
constructor or from the
NDEFReadingEvent.message
property,
which is passed to NDEFReader.onreading
.
-
NDEFMessageInit
-
-
NDEFReader
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting
browsers.Experimental: This is an experimental technologyCheck
the Browser compatibility table carefully before using this in
production.
The interface of the Web NFC API is used to read from and write
data to compatible NFC devices, e.g. NFC tags supporting NDEF,
when these devices are within the reader's magnetic induction
field.
-
NDEFReadingEvent
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting
browsers.Experimental: This is an experimental technologyCheck
the Browser compatibility table carefully before using this in
production.
The interface of the Web NFC API represents events dispatched on
new NFC readings obtained by NDEFReader.
-
NDEFReadingEventInit
-
-
NDEFRecord
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting
browsers.Experimental: This is an experimental technologyCheck
the Browser compatibility table carefully before using this in
production.
The interface of the Web NFC API provides data that can be read
from, or written to, compatible NFC devices, e.g. NFC tags
supporting NDEF.
-
NDEFRecordInit
-
-
NDEFScanOptions
-
-
NDEFWriteOptions
-
-
NetworkInformation
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface provides information about the connection a device
is using to communicate with the network and provides a means for
scripts to be notified if the connection type changes. The
interfaces cannot be instantiated. It is instead accessed through
the
connection
property of the Navigator interface.
Note: This feature is available in Web Workers
-
NetworkInformationSaveData
-
-
Node
-
The DOM interface is an abstract base
class upon which many other DOM API objects are based, thus
letting those object types
to be used similarly and often interchangeably. As an abstract
class, there is
no such thing as a plain object. All objects that implement
functionality are based on one of its subclasses. Most notable
are
Document, Element, and DocumentFragment.
In addition, every kind of DOM node is represented by an
interface based on
. These include Attr, CharacterData
(which Text, Comment, CDATASection and
ProcessingInstruction are all based on), and DocumentType.
In some cases, a particular feature of the base interface may
not
apply to one of its child interfaces; in that case, the
inheriting node may
return
null
or throw an exception, depending on
circumstances. For example,
attempting to add children to a node type that cannot have
children will throw an
exception.
-
NodeFilter
-
A interface represents an object used to filter the nodes in a
NodeIterator or TreeWalker. A knows nothing about the
document or traversing nodes; it only knows how to evaluate a
single node against the provided filter.
-
NodeIterator
-
The interface
represents an iterator over the members of a list of the nodes
in a subtree of the
DOM. The nodes will be returned in document order.
-
NodeList
-
objects are collections of nodes, usually returned by
properties such as
Node.childNodes
and methods such as
document.querySelectorAll()
.
-
NonDocumentTypeChildNode
-
-
NonElementParentNode
-
-
Notification
-
Note: This feature is available in Web Workers
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the Notifications API is used to configure and
display desktop notifications to the user.
These notifications' appearance and specific functionality vary
across platforms but generally they provide a way to
asynchronously provide information to the user.
-
NotificationAction
-
-
NotificationEvent
-
The parameter passed into the
onnotificationclick
handler, the
interface represents a notification click event that is
dispatched on the ServiceWorkerGlobalScope of a
ServiceWorker.
This interface inherits from the ExtendableEvent interface.
-
NotificationEventInit
-
-
NotificationOptions
-
-
OESDrawBuffersIndexed
-
-
OESElementIndexUint
-
The extension is part of the WebGL API and adds support for
gl.UNSIGNED_INT
types to
WebGLRenderingContext.drawElements()
.
WebGL extensions are available using the
WebGLRenderingContext.getExtension()
method. For more
information, see also Using Extensions in the WebGL tutorial.
-
OESFboRenderMipmap
-
The extension is part of the WebGL API and makes it possible to
attach any level of a texture to a framebuffer object.
WebGL extensions are available using the
WebGLRenderingContext.getExtension()
method. For more
information, see also Using Extensions in the WebGL tutorial.
-
OESStandardDerivatives
-
The extension is part of the WebGL API and adds the GLSL
derivative functions
dFdx
, dFdy
, and fwidth
.
WebGL extensions are available using the
WebGLRenderingContext.getExtension()
method. For more
information, see also Using Extensions in the WebGL tutorial.
-
OESTextureFloat
-
The extension is part of the WebGL API and exposes
floating-point pixel types for textures.
WebGL extensions are available using the
WebGLRenderingContext.getExtension()
method. For more
information, see also Using Extensions in the WebGL tutorial.
-
OESTextureFloatLinear
-
The extension is part of the WebGL API and allows linear
filtering with floating-point pixel types for textures.
WebGL extensions are available using the
WebGLRenderingContext.getExtension()
method. For more
information, see also Using Extensions in the WebGL tutorial.
-
OESTextureHalfFloat
-
The extension is part of the WebGL API and adds texture formats
with 16- (aka half float) and 32-bit floating-point components.
WebGL extensions are available using the
WebGLRenderingContext.getExtension()
method. For more
information, see also Using Extensions in the WebGL tutorial.
-
OESTextureHalfFloatLinear
-
The extension is part of the WebGL API and allows linear
filtering with half floating-point pixel types for textures.
WebGL extensions are available using the
WebGLRenderingContext.getExtension()
method. For more
information, see also Using Extensions in the WebGL tutorial.
-
OESVertexArrayObject
-
The OES_vertex_array_object extension is part of the WebGL API
and provides vertex array objects (VAOs) which encapsulate vertex
array states. These objects keep pointers to vertex data and
provide names for different sets of vertex data.
WebGL extensions are available using the
WebGLRenderingContext.getExtension()
method. For more
information, see also Using Extensions in the WebGL tutorial.
-
OfflineAudioCompletionEvent
-
The Web Audio API interface represents events that occur when
the processing of an OfflineAudioContext is terminated. The
complete
event uses this interface.
-
OfflineAudioCompletionEventInit
-
-
OfflineAudioContext
-
The interface is an AudioContext interface representing an
audio-processing graph built from linked together AudioNodes.
In contrast with a standard AudioContext, an doesn't render the
audio to the device hardware; instead, it generates it, as fast
as it can, and outputs the result to an AudioBuffer.
-
OfflineAudioContextOptions
-
-
OffscreenCanvas
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface provides a canvas that can be rendered off screen.
It is available in both the window and worker contexts.
Note: This feature is available in Web Workers
-
OffscreenCanvasRenderingContext2D
-
-
OpenFilePickerOptions
-
-
OptionalEffectTiming
-
-
OrientationSensor
-
The interface of the Sensor APIs is the base class for
orientation sensors. This interface cannot be used directly.
Instead it provides properties and methods accessed by interfaces
that inherit from it.
If a feature policy blocks use of a feature it is because your
code is inconsistent with the policies set on your server. This
is not something that would ever be shown to a user. The
Feature-Policy
HTTP header article contains implementation
instructions.
-
OrientationSensorOptions
-
-
OscillatorNode
-
The interface represents a periodic waveform, such as a sine
wave. It is an AudioScheduledSourceNode audio-processing module
that causes a specified frequency of a given wave to be
created—in effect, a constant tone.
-
OscillatorOptions
-
-
OTPCredential
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the WebOTP API contains the attributes that are
returned when a new one-time password is retrieved.
-
OTPCredentialRequestOptions
-
-
OverconstrainedError
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting
browsers.Experimental: This is an experimental technologyCheck
the Browser compatibility table carefully before using this in
production.
The interface of the Media Capture and Streams API indicates
that the set of desired capabilities for the current
MediaStreamTrack cannot currently be met. When this event is
thrown on a MediaStreamTrack, it is muted until either the
current constraints can be established or until satisfiable
constraints are applied.
-
OVRMultiview2
-
The extension is part of the WebGL API and adds support for
rendering into multiple views simultaneously. This especially
useful for virtual reality (VR) and WebXR.
For more information, see also:
-
PageTransitionEvent
-
The event object is available inside handler functions for the
pageshow
and pagehide
events, fired when a document is being
loaded or unloaded.
-
PageTransitionEventInit
-
-
PaintRenderingContext2D
-
-
PaintRenderingContext2DSettings
-
-
PaintSize
-
-
PaintWorkletGlobalScope
-
-
PannerNode
-
The interface represents the position and behavior of an audio
source signal in space. It is an AudioNode audio-processing
module describing its position with right-hand Cartesian
coordinates, its movement using a velocity vector and its
directionality using a directionality cone.
A always has exactly one input and one output: the input can be
mono or stereo but the output is always stereo (2 channels); you
can't have panning effects without at least two audio channels!
-
PannerOptions
-
-
ParentNode
-
-
PasswordCredential
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.Secure context: This feature is available only in
secure contexts (HTTPS), in some or all supporting browsers.
The interface of the Credential Management API provides
information about a username/password pair. In supporting
browsers an instance of this class may be passed in the
credential
member of the init
object for global fetch()
.
-
PasswordCredentialData
-
-
Path2D
-
The interface of the Canvas 2D API is used to declare a path
that can then be used on a CanvasRenderingContext2D object. The
path methods of the CanvasRenderingContext2D interface are also
present on this interface, which gives you the convenience of
being able to retain and replay your path whenever desired.
-
PaymentCompleteDetails
-
-
PaymentCredentialInstrument
-
-
PaymentCurrencyAmount
-
-
PaymentDetailsBase
-
-
PaymentDetailsInit
-
-
PaymentDetailsModifier
-
-
PaymentDetailsUpdate
-
-
PaymentHandlerResponse
-
-
PaymentInstrument
-
-
PaymentInstruments
-
-
PaymentItem
-
-
PaymentManager
-
-
PaymentMethodChangeEvent
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the Payment Request API describes the
paymentmethodchange
event which is fired by some payment
handlers when the user switches payment instruments (e.g., a user
selects a "store" card to make a purchase while using Apple Pay).
-
PaymentMethodChangeEventInit
-
-
PaymentMethodData
-
-
PaymentRequest
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The Payment Request API's interface is the primary access point
into the API, and lets web content and apps accept payments from
the end user on behalf of the operator of the site or the
publisher of the app.
-
PaymentRequestDetailsUpdate
-
-
PaymentRequestEvent
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the Payment Request API is the object passed to
a payment handler when a PaymentRequest is made.
-
PaymentRequestEventInit
-
-
PaymentRequestUpdateEvent
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface is used for events sent to a PaymentRequest
instance when changes are made to shipping-related information
for a pending PaymentRequest. Those events are:
-
PaymentRequestUpdateEventInit
-
-
PaymentResponse
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the Payment Request API is returned after a
user selects a payment method and approves a payment request.
-
PaymentValidationErrors
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The dictionary represents objects providing information about
any and all errors that occurred while processing a payment
request. When validation of the PaymentResponse returned by the
PaymentRequest.show()
or PaymentResponse.retry()
methods
fails, your code creates a object to pass into retry()
so that
the user agent knows what needs to be fixed and what if any error
messages to display to the user.
-
Pbkdf2Params
-
The dictionary of the Web Crypto API represents the object that
should be passed as the
algorithm
parameter into
SubtleCrypto.deriveKey()
, when using the PBKDF2 algorithm.
-
Performance
-
The interface provides access to performance-related information
for the current page. It's part of the High Resolution Time API,
but is enhanced by the Performance Timeline API, the Navigation
Timing API, the User Timing API, and the Resource Timing API.
An object of this type can be obtained by calling the
window.performance
read-only attribute.
-
PerformanceElementTiming
-
The interface of the Element Timing API reports timing
information on a specific element identified by the page author.
For example it could report timing information about the main
image in an article.
-
PerformanceEntry
-
The object encapsulates a single performance metric that is part
of the performance timeline. A performance entry can be directly
created by making a performance
mark
or measure
(for example
by calling the mark()
method) at an explicit point in an
application. Performance entries are also created in indirect
ways such as loading a resource (such as an image).
instances will always be one of the following subtypes:
-
PerformanceEventTiming
-
The interface of the Event Timing API provides timing
information for the event types listed below.
-
PerformanceLongTaskTiming
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the Long Tasks API reports instances of long
tasks.
-
PerformanceMark
-
is an abstract interface for PerformanceEntry objects with an
entryType of "
mark
". Entries of this type are created by
calling performance.mark()
to add a named double (the mark)
to the browser's performance timeline.
-
PerformanceMarkOptions
-
-
PerformanceMeasure
-
is an abstract interface for PerformanceEntry objects with an
entryType of "
measure
". Entries of this type are created by
calling performance.measure()
to add a named double (the
measure) between two marks to the browser's performance timeline.
-
PerformanceMeasureOptions
-
-
PerformanceNavigation
-
Deprecated: This feature is no longer recommended. Though some
browsers might still support it, it may have already been removed
from the relevant web standards, may be in the process of being
dropped, or may only be kept for compatibility purposes. Avoid
using it, and update existing code if possible; see the
compatibility table at the bottom of this page to guide your
decision. Be aware that this feature may cease to work at any
time.
The legacy interface represents information about how the
navigation to the current document was done.
-
PerformanceNavigationTiming
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface provides methods and properties to store and
retrieve metrics regarding the browser's document navigation
events. For example, this interface can be used to determine how
much time it takes to load or unload a document.
-
PerformanceObserver
-
The interface is used to observe performance measurement events
and be notified of new performance entries as they are recorded
in the browser's performance timeline.
Note: This feature is available in Web Workers
-
PerformanceObserverCallbackOptions
-
-
PerformanceObserverEntryList
-
The interface is a list of performance events that were
explicitly observed via the
observe()
method.
Note: this interface is exposed to Window and Worker.
-
PerformanceObserverInit
-
-
PerformancePaintTiming
-
The interface of the Paint Timing API provides timing
information about "paint" (also called "render") operations
during web page construction. "Paint" refers to conversion of the
render tree to on-screen pixels.
An application can register a PerformanceObserver for
"
paint
" performance entry types
and the observer can retrieve
the times that paint events occur. Use this information to help
identify areas that take too long to provide a good user
experience.
-
PerformanceResourceTiming
-
The interface enables retrieval and analysis of detailed network
timing data regarding the loading of an application's resources.
An application can use the timing metrics to determine, for
example, the length of time it takes to fetch a specific
resource, such as an XMLHttpRequest,
<SVG>
, image, or script.
The interface's properties create a resource loading timeline
with high-resolution timestamps
for network events such as
redirect start and end times, fetch start, DNS lookup start and
end times, response start and end times, etc.. Additionally, the
interface extends PerformanceEntry with other properties which
provide data about the size of the fetched resource as well as
the type of resource that initiated the fetch.
-
PerformanceServerTiming
-
Note: This feature is available in Web Workers
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface surfaces server metrics that are sent with the
response in the
Server-Timing
HTTP header.
This interface is restricted to the same origin, but you can use
the Timing-Allow-Origin
header to specify the domains that are
allowed to access the server metrics. Note that this interface is
only available in secure contexts (HTTPS) in some browsers.
-
PerformanceTiming
-
Deprecated: This feature is no longer recommended. Though some
browsers might still support it, it may have already been removed
from the relevant web standards, may be in the process of being
dropped, or may only be kept for compatibility purposes. Avoid
using it, and update existing code if possible; see the
compatibility table at the bottom of this page to guide your
decision. Be aware that this feature may cease to work at any
time.
-
PeriodicSyncEvent
-
The interface of the
Web Periodic Background Synchronization
API
provides a way to run tasks in the service worker with
network connectivity.
An instance of this event is passed to the
ServiceWorkerGlobalScope.onperiodicsync
handler. This happens
periodically, at an interval greater than or equal to that set in
the PeriodicSyncManager.register()
method. Other
implementation-specific factors such as the user's engagement
with the site decide the actual interval.
-
PeriodicSyncEventInit
-
-
PeriodicSyncManager
-
The interface of the
Web Periodic Background Synchronization
API
provides a way to register tasks to be run in a service
worker at periodic intervals with network connectivity. These
tasks are referred to as periodic background sync requests.
Access through the ServiceWorkerRegistration.periodicSync
.
-
PeriodicWave
-
The interface defines a periodic waveform that can be used to
shape the output of an OscillatorNode.
has no inputs or outputs; it is used to define custom
oscillators when calling
OscillatorNode.setPeriodicWave()
. The
itself is created/returned by
BaseAudioContext.createPeriodicWave
.
-
PeriodicWaveConstraints
-
-
PeriodicWaveOptions
-
-
PermissionDescriptor
-
-
Permissions
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The Permissions interface of the Permissions API provides the
core Permission API functionality, such as methods for querying
and revoking permissions
-
PermissionSetParameters
-
-
PermissionsPolicy
-
-
PermissionsPolicyViolationReportBody
-
-
PermissionStatus
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the Permissions API provides the state of an
object and an event handler for monitoring changes to said state.
-
PhotoCapabilities
-
-
PhotoSettings
-
-
PictureInPictureEvent
-
The interface represents picture-in-picture-related events,
including
enterpictureinpicture
, leavepictureinpicture
and
resize
-
PictureInPictureEventInit
-
-
PictureInPictureWindow
-
The interface represents an object able to programmatically
obtain the width and height and
resize event
of the
floating video window.
An object with this interface is obtained using the
HTMLVideoElement.requestPictureInPicture()
promise return
value.
-
PlaneLayout
-
-
Plugin
-
Deprecated: This feature is no longer recommended. Though some
browsers might still support it, it may have already been removed
from the relevant web standards, may be in the process of being
dropped, or may only be kept for compatibility purposes. Avoid
using it, and update existing code if possible; see the
compatibility table at the bottom of this page to guide your
decision. Be aware that this feature may cease to work at any
time.
The interface provides information about a browser plugin.
-
PluginArray
-
Deprecated: This feature is no longer recommended. Though some
browsers might still support it, it may have already been removed
from the relevant web standards, may be in the process of being
dropped, or may only be kept for compatibility purposes. Avoid
using it, and update existing code if possible; see the
compatibility table at the bottom of this page to guide your
decision. Be aware that this feature may cease to work at any
time.
The interface is used to store a list of Plugin objects
describing the available plugins; it's returned by the
navigator.plugins
property. The is not a JavaScript array, but
has the length property and supports accessing individual items
using bracket notation ([plugins2
]), as well as via
item(index)
and namedItem("name")
methods.
-
Point2D
-
-
PointerEvent
-
The interface represents the state of a DOM event produced by a
pointer such as the geometry of the contact point, the device
type that generated the event, the amount of pressure that was
applied on the contact surface, etc.
A pointer is a hardware agnostic representation of input devices
(such as a mouse, pen or contact point on a touch-enable
surface). The pointer can target a specific coordinate (or set of
coordinates) on the contact surface such as a screen.
A pointer's hit test is the process a browser uses to determine
the target element for a pointer event. Typically, this is
determined by considering the pointer's location and also the
visual layout of elements in a document on screen media.
-
PointerEventInit
-
-
PopStateEvent
-
is an event handler for the
popstate
event on the window.
A popstate
event is dispatched to the window every time the
active history
entry changes between two history entries for the same
document. If the history entry
being activated was created by a call to history.pushState()
or was
affected by a call to history.replaceState()
, the popstate
event's state property contains a copy of the history entry's
state object.
-
PopStateEventInit
-
-
PortalActivateEvent
-
-
PortalActivateEventInit
-
-
PortalActivateOptions
-
-
PortalHost
-
-
PositionOptions
-
-
Presentation
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.Secure context: This feature is available only in
secure contexts (HTTPS), in some or all supporting browsers.
The can be defined as two possible user agents in the context:
Controlling user agent and Receiving user agent.
In controlling browsing context, the interface provides a
mechanism to override the browser default behavior of launching
presentation to external screen. In receiving browsing context,
interface provides the access to the available presentation
connections.
-
PresentationAvailability
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.Secure context: This feature is available only in
secure contexts (HTTPS), in some or all supporting browsers.
A object is associated with available presentation displays and
represents the presentation display availability for a
presentation request. If the controlling user agent can monitor
the list of available presentation displays in the background
(without a pending request to
start()
), the object MUST be
implemented in a controlling browsing context.
The value attribute MUST return the last value it was set to.
The value is updated by the monitor the list of available
presentation displays algorithm.
The onchange attribute is an event handler whose corresponding
event handler event type is change
.
-
PresentationConnection
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.Secure context: This feature is available only in
secure contexts (HTTPS), in some or all supporting browsers.
The interface of the Presentation API provides methods and
properties for managing a single presentation. Each presentation
connection is represented by a object. Both the controlling user
agent and receiving user agent MUST implement .
-
PresentationConnectionAvailableEvent
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.Secure context: This feature is available only in
secure contexts (HTTPS), in some or all supporting browsers.
The interface of the Presentation API is fired on a
PresentationRequest when a connection associated with the
object is created.
A controlling user agent fires a trusted event named
connectionavailable
on a PresentationRequest when a
connection associated with the object is created. It is fired at
the PresentationRequest instance, using the interface, with the
connection attribute set to the PresentationConnection object
that was created. The event is fired for each connection that is
created for the controller, either by the controller calling
start()
or reconnect()
, or by the controlling user agent
creating a connection on the controller's behalf via
defaultRequest
.
-
PresentationConnectionAvailableEventInit
-
-
PresentationConnectionCloseEvent
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.Secure context: This feature is available only in
secure contexts (HTTPS), in some or all supporting browsers.
The interface of the Presentation API is fired on a
PresentationConnection when it is closed.
-
PresentationConnectionCloseEventInit
-
-
PresentationConnectionList
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting
browsers.Experimental: This is an experimental technologyCheck
the Browser compatibility table carefully before using this in
production.
is the collection of incoming presentation connections.
-
PresentationReceiver
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting
browsers.Experimental: This is an experimental technologyCheck
the Browser compatibility table carefully before using this in
production.
The interface of the Presentation API provides a means for a
receiving browsing context to access controlling browsing
contexts and communicate with them.
-
PresentationRequest
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.Secure context: This feature is available only in
secure contexts (HTTPS), in some or all supporting browsers.
A object is used to initiate or reconnect to a presentation made
by a controlling browsing context. The object MUST be implemented
in a controlling browsing context provided by a controlling user
agent.
When a is constructed, the given
urls
MUST be used as the list
of presentation request URLs which are each a possible
presentation URL for the instance.
-
PressureObserver
-
-
PressureObserverOptions
-
-
PressureRecord
-
-
ProcessingInstruction
-
The interface represents a processing instruction; that is, a
Node which embeds an instruction targeting a specific
application but that can be ignored by any other applications
which don't recognize the instruction.
-
Profiler
-
-
ProfilerFrame
-
-
ProfilerInitOptions
-
-
ProfilerSample
-
-
ProfilerStack
-
-
ProfilerTrace
-
-
ProgressEvent
-
The interface represents events measuring progress of an
underlying process, like an HTTP request (for an
XMLHttpRequest, or the loading of the underlying resource of an
<img>
, <audio>
, <video>
, <style>
or <link>
).
-
ProgressEventInit
-
-
PromiseRejectionEvent
-
The interface represents events which are sent to the global
script context when JavaScript Futures are rejected. These
events are particularly useful for telemetry and debugging
purposes.
For details on promise rejection events, see Promise rejection
events in Using Promises.
-
PromiseRejectionEventInit
-
-
PromptResponseObject
-
-
PropertyDefinition
-
-
ProximityReadingValues
-
-
ProximitySensor
-
-
PublicKeyCredential
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface provides information about a public key / private
key pair, which is a credential for logging in to a service using
an un-phishable and data-breach resistant asymmetric key pair
instead of a password. It inherits from Credential, and was
created by the Web Authentication API extension to the Credential
Management API. Other interfaces that inherit from Credential
are PasswordCredential and FederatedCredential.
-
PublicKeyCredentialCreationOptions
-
-
PublicKeyCredentialCreationOptionsJSON
-
-
PublicKeyCredentialDescriptor
-
-
PublicKeyCredentialDescriptorJSON
-
-
PublicKeyCredentialEntity
-
-
PublicKeyCredentialParameters
-
-
PublicKeyCredentialRequestOptions
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The dictionary of the Web Authentication API holds the options
passed to
navigator.credentials.get()
in order to fetch a given
PublicKeyCredential.
-
PublicKeyCredentialRequestOptionsJSON
-
-
PublicKeyCredentialRpEntity
-
-
PublicKeyCredentialUserEntity
-
-
PublicKeyCredentialUserEntityJSON
-
-
PurchaseDetails
-
-
PushEvent
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the Push API represents a push message that has
been received. This event is sent to the global scope of a
ServiceWorker. It contains the information sent from an
application server to a PushSubscription.
-
PushEventInit
-
-
PushManager
-
The interface of the Push API provides a way to receive
notifications from third-party servers as well as request URLs
for push notifications.
This interface is accessed via the
ServiceWorkerRegistration.pushManager
property.
-
PushMessageData
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the Push API provides methods which let you
retrieve the push data sent by a server in various formats.
Unlike the similar methods in the Fetch API, which only allow
the method to be invoked once, these methods can be called
multiple times.
Messages received through the Push API are sent encrypted by
push services and then automatically decrypted by browsers before
they are made accessible through the methods of the interface.
-
PushPermissionDescriptor
-
-
PushSubscription
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the Push API provides a subcription's URL
endpoint and allows unsubscription from a push service.
An instance of this interface can be serialized.
-
PushSubscriptionChangeEvent
-
-
PushSubscriptionChangeEventInit
-
-
PushSubscriptionJSON
-
-
PushSubscriptionOptions
-
The interface of the Push API represents the options associated
with a push subscription.
The read-only object is returned by calling
PushSubscription.options
on a PushSubscription. This
interface has no constructor of its own.
-
PushSubscriptionOptionsInit
-
-
QueryOptions
-
-
QueuingStrategy
-
-
QueuingStrategyInit
-
-
RadioNodeList
-
The interface represents a collection of radio elements in a
<form>
or a <fieldset>
element.
-
Range
-
The interface represents a fragment of a document that can
contain nodes and parts of text nodes.
A range can be created by using the
Document.createRange()
method. Range objects can also be retrieved by using the
getRangeAt()
method of the Selection object or the
caretRangeFromPoint()
method of the Document object.
There also is the Range() constructor available.
-
RdfDataset
-
-
RdfGraph
-
-
RdfLiteral
-
-
RdfTriple
-
-
ReadableByteStreamController
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the Streams API represents a controller
allowing control of a ReadableStream's state and internal
queue. Byte stream controllers are for byte streams.
-
ReadableStream
-
The interface of the Streams API represents a readable stream of
byte data. The Fetch API offers a concrete instance of a through
the
body
property of a Response object.
-
ReadableStreamBYOBReader
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the Streams API represents a BYOB ("bring your
own buffer") reader that can be used to read stream data supplied
by the developer (e.g. a custom ReadableStream() constructor).
-
ReadableStreamBYOBRequest
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the Streams API represents a pull request into
a ReadableByteStreamController view.
A view, as mentioned below, refers to a typed array representing
the destination region to which the associated
ReadableByteStreamController controller can write generated
data.
-
ReadableStreamDefaultController
-
The interface of the Streams API represents a controller
allowing control of a ReadableStream's state and internal
queue. Default controllers are for streams that are not byte
streams.
-
ReadableStreamDefaultReader
-
The interface of the Streams API represents a default reader
that can be used to read stream data supplied from a network
(e.g. a fetch request).
-
ReadableStreamGenericReader
-
-
ReadableStreamGetReaderOptions
-
-
ReadableStreamIteratorOptions
-
-
ReadableStreamReadResult
-
-
ReadableWritablePair
-
-
ReadOptions
-
-
Region
-
-
RegistrationOptions
-
-
RegistrationResponseJSON
-
-
RelatedApplication
-
-
RelativeOrientationReadingValues
-
-
RelativeOrientationSensor
-
The interface of the Sensor APIs describes the device's physical
orientation without regard to the Earth's reference coordinate
system.
To use this sensor, the user must grant permission to the
'accelerometer'
, and 'gyroscope'
device sensors through the
Permissions API.
If a feature policy blocks use of a feature it is because your
code is inconsistent with the policies set on your server. This
is not something that would ever be shown to a user. The
Feature-Policy
HTTP header article contains implementation
instructions.
-
RemoteDocument
-
-
RemotePlayback
-
The interface of the Remote Playback API allows the page to
detect availability of remote playback devices, then connect to
and control playing on these devices.
-
Report
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the Reporting API represents a single report.
Reports can be accessed in a number of ways:
-
ReportBody
-
The interface of the Reporting API represents the body of a
report. Individual report types inherit from this interface,
adding specific attributes relevant to the particular report.
-
ReportingObserver
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the Reporting API allows you to collect and
access reports.
-
ReportingObserverOptions
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The dictionary of the Reporting API allows options to be set in
the constructor when creating a ReportingObserver.
-
Request
-
The interface of the Fetch API represents a resource request.
You can create a new object using the Request() constructor,
but you are more likely to encounter a object being returned as
the result of another API operation, such as a service worker
FetchEvent.request
.
-
RequestDeviceOptions
-
-
RequestInit
-
-
ResizeObserver
-
The interface reports changes to the dimensions of an
Element's content or border box, or the bounding box of an
SVGElement.
-
ResizeObserverEntry
-
The interface represents the object passed to the
ResizeObserver() constructor's callback function, which allows
you to access the new dimensions of the Element or SVGElement
being observed.
-
ResizeObserverOptions
-
-
ResizeObserverSize
-
The interface of the
Resize Observer API
is used by the
ResizeObserverEntry interface to access the box sizing
properties of the element being observed.
-
Response
-
The interface of the Fetch API represents the response to a
request.
You can create a new object using the Response.Response()
constructor, but you are more likely to encounter a object being
returned as the result of another API operation—for example, a
service worker
FetchEvent.respondWith
, or a simple fetch()
.
-
ResponseInit
-
-
RsaHashedImportParams
-
The dictionary of the Web Crypto API represents the object that
should be passed as the
algorithm
parameter into
SubtleCrypto.importKey()
or SubtleCrypto.unwrapKey()
, when
importing any RSA-based key pair: that is, when the algorithm is
identified as any of RSASSA-PKCS1-v1_5, RSA-PSS, or RSA-OAEP.
-
RsaHashedKeyAlgorithm
-
-
RsaHashedKeyGenParams
-
The dictionary of the Web Crypto API represents the object that
should be passed as the
algorithm
parameter into
SubtleCrypto.generateKey()
, when generating any RSA-based key
pair: that is, when the algorithm is identified as any of
RSASSA-PKCS1-v1_5, RSA-PSS, or RSA-OAEP.
-
RsaKeyAlgorithm
-
-
RsaKeyGenParams
-
-
RsaOaepParams
-
The dictionary of the Web Crypto API represents the object that
should be passed as the
algorithm
parameter into
SubtleCrypto.encrypt()
, SubtleCrypto.decrypt()
,
SubtleCrypto.wrapKey()
, or SubtleCrypto.unwrapKey()
, when
using the RSA_OAEP algorithm.
-
RsaOtherPrimesInfo
-
-
RsaPssParams
-
The dictionary of the Web Crypto API represents the object that
should be passed as the
algorithm
parameter into
SubtleCrypto.sign()
or SubtleCrypto.verify()
, when using the
RSA-PSS algorithm.
-
RTCAnswerOptions
-
-
RTCAudioSourceStats
-
-
RTCCertificate
-
The interface of the WebRTC API provides an object represents a
certificate that an RTCPeerConnection uses to authenticate.
-
RTCCertificateExpiration
-
-
RTCCertificateStats
-
-
RTCCodecStats
-
-
RTCConfiguration
-
-
RTCDataChannel
-
The interface represents a network channel which can be used for
bidirectional peer-to-peer transfers of arbitrary data. Every
data channel is associated with an RTCPeerConnection, and each
peer connection can have up to a theoretical maximum of 65,534
data channels (the actual limit may vary from browser to
browser).
To create a data channel and ask a remote peer to join you, call
the RTCPeerConnection's
createDataChannel()
method. The peer
being invited to exchange data receives a datachannel
event
(which has type RTCDataChannelEvent) to let it know the data
channel has been added to the connection.
-
RTCDataChannelEvent
-
The interface
represents an event related to a specific RTCDataChannel.
-
RTCDataChannelEventInit
-
-
RTCDataChannelInit
-
-
RTCDataChannelStats
-
-
RTCDtlsFingerprint
-
-
RTCDtlsTransport
-
The interface provides access to information about the Datagram
Transport Layer Security (DTLS) transport over which a
RTCPeerConnection's RTP and RTCP packets are sent and received
by its RTCRtpSender and RTCRtpReceiver objects.
A object is also used to provide information about SCTP packets
transmitted and received by an connection's data channels.
Features of the DTLS transport include the addition of security
to the underlying transport; the interface can be used to obtain
information about the underlying transport and the security added
to it by the DTLS layer.
-
RTCDTMFSender
-
The interface provides a mechanism for transmitting DTMF codes
on a WebRTC RTCPeerConnection. You gain access to the
connection's through the
RTCRtpSender.dtmf
property on the
audio track you wish to send DTMF with.
The primary purpose for WebRTC's DTMF support is to allow
WebRTC-based communication clients to be connected to a
public-switched telephone network (PSTN) or other legacy
telephone service, including extant voice over IP (VoIP)
services. For that reason, DTMF can't be used between two
WebRTC-based devices, because there is no mechanism provided by
WebRTC for receiving DTMF codes.
-
RTCDTMFToneChangeEvent
-
The interface represents events sent to indicate that DTMF tones
have started or finished playing. This interface is used by the
tonechange
event.
-
RTCDTMFToneChangeEventInit
-
-
RTCEncodedAudioFrame
-
-
RTCEncodedAudioFrameMetadata
-
-
RTCEncodedVideoFrame
-
-
RTCEncodedVideoFrameMetadata
-
-
RTCError
-
The interface describes an error which has occurred while
handling WebRTC operations. It's based upon the standard
Exception interface that describes general DOM errors.
-
RTCErrorEvent
-
The WebRTC API's interface represents an error sent to a WebRTC
object. It's based on the standard Event interface, but adds
RTC-specific information describing the error, as shown below.
-
RTCErrorEventInit
-
-
RTCErrorInit
-
-
RTCIceCandidate
-
The interface—part of the WebRTC API—represents a candidate
Interactive Connectivity Establishment (ICE) configuration which
may be used to establish an RTCPeerConnection.
An ICE candidate describes the protocols and routing needed for
WebRTC to be able to communicate with a remote device. When
starting a WebRTC peer connection, typically a number of
candidates are proposed by each end of the connection, until they
mutually agree upon one which describes the connection they
decide will be best. WebRTC then uses that candidate's details to
initiate the connection.
For details on how the ICE process works, see Lifetime of a
WebRTC session. The article WebRTC connectivity provides
additional useful details.
-
RTCIceCandidateInit
-
-
RTCIceCandidatePair
-
The dictionary describes a pair of ICE candidates which together
comprise a description of a viable connection between two WebRTC
endpoints. It is used as the return value from
RTCIceTransport.getSelectedCandidatePair()
to identify the
currently-selected candidate pair identified by the ICE agent.
-
RTCIceCandidatePairStats
-
The WebRTC dictionary reports statistics which provide insight
into the quality and performance of an RTCPeerConnection while
connected and configured as described by the specified pair of
ICE candidates.
If a RTCStats-based object's type is
candidate-pair
, it's
an object.
-
RTCIceCandidateStats
-
The WebRTC API's dictionary provides statistics related to an
RTCIceCandidate.
-
RTCIceGatherOptions
-
-
RTCIceParameters
-
The dictionary specifies the username fragment and password
assigned to an ICE session.
During ICE negotiation, each peer's username fragment and
password are recorded in an object, which can be obtained from
the RTCIceTransport by calling its
getLocalParameters()
or
getRemoteParameters()
method, depending on which end interests
you.
-
RTCIceServer
-
The dictionary defines how to connect to a single ICE server
(such as a STUN or TURN server). Objects of this type are
provided in the configuration of an RTCPeerConnection, in the
iceServers
array.
-
RTCIceTransport
-
The interface provides access to information about the ICE
transport layer over which the data is being sent and received.
This is particularly useful if you need to access state
information about the connection.
-
RTCIdentityAssertion
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the WebRTC API represents the identity of a
remote peer of the current connection. If no peer has yet been
set and verified, then this interface returns
null
. Once set it
can't be changed.
-
RTCIdentityAssertionResult
-
-
RTCIdentityProvider
-
-
RTCIdentityProviderDetails
-
-
RTCIdentityProviderGlobalScope
-
-
RTCIdentityProviderOptions
-
-
RTCIdentityProviderRegistrar
-
-
RTCIdentityValidationResult
-
-
RTCInboundRtpStreamStats
-
The WebRTC API's dictionary, based upon
RTCReceivedRtpStreamStats and RTCStats, contains statistics
related to the receiving end of an RTP stream on the local end of
the RTCPeerConnection.
-
RTCInsertableStreams
-
-
RTCLocalSessionDescriptionInit
-
-
RTCMediaSourceStats
-
-
RTCOfferAnswerOptions
-
-
RTCOfferOptions
-
-
RTCOutboundRtpStreamStats
-
The dictionary is the RTCStats-based object which provides
metrics and statistics related to an outbound RTP stream being
sent by an RTCRtpSender.
-
RTCPeerConnection
-
The interface represents a WebRTC connection between the local
computer and a remote peer. It provides methods to connect to a
remote peer, maintain and monitor the connection, and close the
connection once it's no longer needed.
-
RTCPeerConnectionIceErrorEvent
-
The interface—based upon the Event interface—provides details
pertaining to an ICE error announced by sending an
icecandidateerror
event to the RTCPeerConnection object.
-
RTCPeerConnectionIceErrorEventInit
-
-
RTCPeerConnectionIceEvent
-
The interface represents events that occur in relation to ICE
candidates with the target, usually an RTCPeerConnection.
Only one event is of this type:
icecandidate
.
-
RTCPeerConnectionIceEventInit
-
-
RTCPeerConnectionStats
-
-
RTCReceivedRtpStreamStats
-
-
RTCRemoteInboundRtpStreamStats
-
-
RTCRemoteOutboundRtpStreamStats
-
The WebRTC statistics model's dictionary extends the underlying
RTCSentRtpStreamStats dictionary with properties measuring
metrics specific to outgoing RTP streams.
-
RTCRtcpParameters
-
The dictionary provides parameters of an RTCP connection. It's
used as the value of the
rtcp
property of the parameters of an
RTCRtpSender or RTCRtpReceiver.
-
RTCRtpCapabilities
-
The dictionary is a data type used to describe the capabilities
of an RTCRtpSender or RTCRtpReceiver in response to a call to
the RTCRtpSender.getCapabilities() or
RTCRtpReceiver.getCapabilities() static functions, both of
which return an array of objects.
An object contains an array of objects conforming to
RTCRtpCodecCapability (each describing the capabilities of one
codec) and an array of the supported RTP header extensions for
that codec.
-
RTCRtpCodecCapability
-
The WebRTC API's dictionary provides information describing the
capabilities of a single media codec.
-
RTCRtpCodecParameters
-
The dictionary, part of the WebRTC API, is used to describe the
configuration parameters for a single media codec.
In addition to being the type of the
RTCRtpParameters.codecs
property, it's used when calling
RTCRtpTransceiver.setCodecPreferences()
to configure a
transceiver's codecs before beginning the offer/answer process to
establish a WebRTC peer connection.
Most of the fields in this property take values which are
defined and maintained by the Internet Assigned Numbers Authority
(IANA). References to relevant IANA documents are provided in the
see also section at the end of this article.
-
RTCRtpCodingParameters
-
-
RTCRtpContributingSource
-
The dictionary of the WebRTC API is used by
getContributingSources()
to provide information about a given
contributing source (CSRC), including the most recent time a
packet that the source contributed was played out.
The information provided is based on the last ten seconds of
media received.
-
RTCRtpEncodingParameters
-
An instance of the WebRTC API's dictionary describes a single
configuration of a codec for an RTCRtpSender.
This dictionary is used in the RTCRtpSendParameters describing
the configuration of an RTP sender's
encodings
;
RTCRtpDecodingParameters
is used to describe the configuration
of an RTP receiver's encodings
.
-
-
-
RTCRtpParameters
-
The dictionary is the basic object describing the parameters of
an RTP transport. It is extended separately for senders and
receivers in the form of the RTCRtpSendParameters and
RTCRtpReceiveParameters dictionaries.
To obtain the parameters of a sender or receiver, call its
getParameters()
method:
-
RTCRtpReceiveParameters
-
The dictionary, based upon the RTCRtpParameters dictionary, is
returned by the RTCRtpReceiver method
getParameters()
. It
describes the parameters being used by the receiver's RTP
connection to the remote peer.
-
RTCRtpReceiver
-
The interface of the WebRTC API manages the reception and
decoding of data for a MediaStreamTrack on an
RTCPeerConnection.
-
RTCRtpScriptTransform
-
-
RTCRtpScriptTransformer
-
-
RTCRtpSender
-
The interface provides the ability to control and obtain details
about how a particular MediaStreamTrack is encoded and sent to
a remote peer.
With it, you can configure the encoding used for the
corresponding track, get information about the device's media
capabilities, and so forth. You can also obtain access to an
RTCDTMFSender which can be used to send DTMF codes (to simulate
the user pressing buttons on a telephone's dial pad) to the
remote peer.
-
RTCRtpSendParameters
-
The WebRTC API's dictionary is used to specify the parameters
for an RTCRtpSender when calling its
setParameters()
method.
-
RTCRtpStreamStats
-
The dictionary is returned by the
RTCPeerConnection.getStats()
, RTCRtpSender.getStats()
, and
RTCRtpReceiver.getStats()
methods to provide detailed
statistics about WebRTC connectivity.
While the dictionary has a base set of properties that are
present in each of these cases, there are also additional
properties added depending on which interface the method is
called on.
is the base class for all RTP-related statistics reports. It's
based on RTCStats and adds the following additional fields.
-
RTCRtpSynchronizationSource
-
-
RTCRtpTransceiver
-
The WebRTC interface describes a permanent pairing of an
RTCRtpSender and an RTCRtpReceiver, along with some shared
state.
Each SDP media section describes one bidirectional SRTP ("Secure
Real Time Protocol") stream (excepting the media section for
RTCDataChannel, if present). This pairing of send and receive
SRTP streams is significant for some applications, so is used to
represent this pairing, along with other important state from the
media section. Each non-disabled SRTP media section is always
represented by exactly one transceiver.
A transceiver is uniquely identified using its mid property,
which is the same as the media ID (mid) of its corresponding
m-line. An is associated with an m-line if its mid is non-null;
otherwise it's considered disassociated.
-
RTCRtpTransceiverInit
-
-
RTCSctpTransport
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface provides information which describes a Stream
Control Transmission Protocol (SCTP) transport. This provides
information about limitations of the transport, but also provides
a way to access the underlying Datagram Transport Layer Security
(DTLS) transport over which SCTP packets for all of an
RTCPeerConnection's data channels are sent and received.
You don't create objects yourself; instead, you get access to
the for a given RTCPeerConnection through its
sctp
property.
Possibly the most useful property on this interface is its
maxMessageSize property, which you can use to determine the
upper limit on the size of messages you can send over a data
channel on the peer connection.
-
RTCSentRtpStreamStats
-
-
RTCSessionDescription
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface describes one end of a connection—or potential
connection—and how it's configured. Each consists of a
description type indicating which part of the offer/answer
negotiation process it describes and of the SDP descriptor of the
session.
The process of negotiating a connection between two peers
involves exchanging objects back and forth, with each description
suggesting one combination of connection configuration options
that the sender of the description supports. Once the two peers
agree upon a configuration for the connection, negotiation is
complete.
-
RTCSessionDescriptionInit
-
-
RTCStats
-
The dictionary is the basic statistics object used by WebRTC's
statistics monitoring model, providing the properties required of
all statistics data objects.
Specific classes of statistic are defined as dictionaries based
on . For example, statistics about a received RTP stream are
represented by RTCReceivedRtpStreamStats.
-
RTCStatsReport
-
Draft: This page is not complete.This page is currently
incomplete and under active construction. Please be aware that
it's not going to answer all of your questions just yet.
The interface provides a statistics report obtained by calling
one of the
RTCPeerConnection.getStats()
,
RTCRtpReceiver.getStats()
, and RTCRtpSender.getStats()
methods.
This statistics report contains a mapping of statistic category
string names to objects containing the corresponding statistics
data.
Calling getStats()
on an RTCPeerConnection lets you specify
whether you wish to obtain statistics for outbound, inbound, or
all streams on the connection. The RTCRtpReceiver and
RTCRtpSender versions of getStats()
specifically only return
statistics available to the incoming or outgoing stream on which
you call them.
-
RTCTrackEvent
-
The WebRTC API interface represents the track event, which is
sent when a new MediaStreamTrack is added to an
RTCRtpReceiver which is part of the RTCPeerConnection.
The target is the RTCPeerConnection object to which the track
is being added.
This event is sent by the WebRTC layer to the web site or
application, so you will not typically need to instantiate an
yourself.
-
RTCTrackEventInit
-
-
RTCTransformEvent
-
-
RTCTransportStats
-
-
RTCVideoSourceStats
-
-
Sanitizer
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.Secure context: This feature is available only in
secure contexts (HTTPS), in some or all supporting browsers.
-
SanitizerConfig
-
-
SaveFilePickerOptions
-
-
Scheduler
-
-
SchedulerPostTaskOptions
-
-
Scheduling
-
-
Screen
-
The interface represents a screen, usually the one on which the
current window is being rendered, and is obtained using
window.screen
.
Note that browsers determine which screen to report as current
by detecting which screen has the center of the browser window.
-
ScreenDetailed
-
-
ScreenDetails
-
-
ScreenOrientation
-
The interface of the Screen Orientation API provides information
about the current orientation of the document.
A instance object can be retrieved using the
screen.orientation
property.
-
ScriptingPolicyReportBody
-
-
ScriptProcessorNode
-
Deprecated: This feature is no longer recommended. Though some
browsers might still support it, it may have already been removed
from the relevant web standards, may be in the process of being
dropped, or may only be kept for compatibility purposes. Avoid
using it, and update existing code if possible; see the
compatibility table at the bottom of this page to guide your
decision. Be aware that this feature may cease to work at any
time.
The interface allows the generation, processing, or analyzing of
audio using JavaScript.
-
ScrollIntoViewOptions
-
-
ScrollOptions
-
-
ScrollTimeline
-
-
ScrollTimelineOptions
-
-
ScrollToOptions
-
-
SecurePaymentConfirmationRequest
-
-
SecurityPolicyViolationEvent
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface inherits from Event, and represents the event
object of an event sent on a document or worker when its content
security policy is violated.
-
SecurityPolicyViolationEventInit
-
-
Selection
-
A object represents the range of text selected by the user or
the current position of the caret. To obtain a object for
examination or manipulation, call
window.getSelection()
.
A user may make a selection from left to right (in document
order) or right to left (reverse of document order). The anchor
is where the user began the selection and the focus is where the
user ends the selection. If you make a selection with a desktop
mouse, the anchor is placed where you pressed the mouse button,
and the focus is placed where you released the mouse button.
-
Sensor
-
The interface of the Sensor APIs is the base class for all the
other sensor interfaces. This interface cannot be used directly.
Instead it provides properties, event handlers, and methods
accessed by interfaces that inherit from it.
If a feature policy blocks use of a feature it is because your
code is inconsistent with the policies set on your server. This
is not something that would ever be shown to a user. The
Feature-Policy
HTTP header article contains implementation
instructions.
-
SensorErrorEvent
-
The interface of the Sensor APIs provides information about
errors thrown by a Sensor or derived interface.
-
SensorErrorEventInit
-
-
SensorOptions
-
-
SequenceEffect
-
-
Serial
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the
Web Serial API
provides attributes and
methods for finding and connecting to serial ports from a web
page.
-
SerialInputSignals
-
-
SerialOptions
-
-
SerialOutputSignals
-
-
SerialPort
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the
Web Serial API
provides access to a
serial port on the host device.
-
SerialPortFilter
-
-
SerialPortInfo
-
-
SerialPortRequestOptions
-
-
ServiceEventHandlers
-
-
ServiceWorker
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the Service Worker API provides a reference to
a service worker. Multiple browsing contexts (e.g. pages,
workers, etc.) can be associated with the same service worker,
each through a unique object.
A object is available in the
ServiceWorkerRegistration.active
property, and the ServiceWorkerContainer.controller
property —
this is a service worker that has been activated and is
controlling the page (the service worker has been successfully
registered, and the controlled page has been reloaded.)
The interface is dispatched a set of lifecycle events —
install
and activate
— and functional events including
fetch. A object has an associated ServiceWorker.state
,
related to its lifecycle.
-
ServiceWorkerContainer
-
The interface of the Service Worker API provides an object
representing the service worker as an overall unit in the network
ecosystem, including facilities to register, unregister and
update service workers, and access the state of service workers
and their registrations.
Most importantly, it exposes the
ServiceWorkerContainer.register()
method used to register
service workers, and the ServiceWorkerContainer.controller
property used to determine whether or not the current page is
actively controlled.
-
ServiceWorkerGlobalScope
-
The interface of the Service Worker API represents the global
execution context of a service worker.
Developers should keep in mind that the ServiceWorker state is
not persisted across the termination/restart cycle, so each event
handler should assume it's being invoked with a bare, default
global state.
Once successfully registered, a service worker can and will be
terminated when idle to conserve memory and processor power. An
active service worker is automatically restarted to respond to
events, such as
ServiceWorkerGlobalScope.onfetch
or
ServiceWorkerGlobalScope.onmessage
.
Additionally, synchronous requests are not allowed from within a
service worker — only asynchronous requests, like those initiated
via the fetch()
method, can be used.
This interface inherits from the WorkerGlobalScope interface,
and its parent EventTarget.
-
ServiceWorkerRegistration
-
The interface of the Service Worker API represents the service
worker registration. You register a service worker to control one
or more pages that share the same origin.
The lifetime of a service worker registration is beyond that of
the objects that represent them within the lifetime of their
corresponding service worker clients. The browser maintains a
persistent list of active objects.
-
SetHTMLOptions
-
-
SFrameTransform
-
-
SFrameTransformErrorEvent
-
-
SFrameTransformErrorEventInit
-
-
SFrameTransformOptions
-
-
ShadowAnimation
-
-
ShadowRoot
-
The interface of the Shadow DOM API is the root node of a DOM
subtree that is rendered separately from a document's main DOM
tree.
You can retrieve a reference to an element's shadow root using
its
Element.shadowRoot
property, provided it was created using
Element.attachShadow()
with the mode option set to open
.
-
ShadowRootInit
-
-
ShareData
-
-
SharedWorker
-
The interface represents a specific kind of worker that can be
accessed from several browsing contexts, such as several windows,
iframes or even workers. They implement an interface different
than dedicated workers and have a different global scope,
SharedWorkerGlobalScope.
-
SharedWorkerGlobalScope
-
The object (the SharedWorker global scope) is accessible
through the self keyword. Some additional global functions,
namespaces objects, and constructors, not typically associated
with the worker global scope, but available on it, are listed in
the JavaScript Reference. See the complete list of functions
available to workers.
-
Slottable
-
-
SourceBuffer
-
The interface represents a chunk of media to be passed into an
HTMLMediaElement and played, via a MediaSource object. This
can be made up of one or several media segments.
-
SourceBufferList
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface represents a simple container list for multiple
SourceBuffer objects.
The source buffer list containing the SourceBuffers appended
to a particular MediaSource can be retrieved using the
MediaSource.sourceBuffers
property.
The individual source buffers can be accessed using the array
operator []
.
-
SpatialNavigationSearchOptions
-
-
SpeechGrammar
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the Web Speech API represents a set of words or
patterns of words that we want the recognition service to
recognize.
Grammar is defined using JSpeech Grammar Format (JSGF.) Other
formats may also be supported in the future.
-
SpeechGrammarList
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the Web Speech API represents a list of
SpeechGrammar objects containing words or patterns of words
that we want the recognition service to recognize.
Grammar is defined using JSpeech Grammar Format (JSGF.) Other
formats may also be supported in the future.
-
SpeechRecognition
-
The interface of the Web Speech API is the controller interface
for the recognition service; this also handles the
SpeechRecognitionEvent sent from the recognition service.
-
SpeechRecognitionAlternative
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the Web Speech API represents a single word
that has been recognized by the speech recognition service.
-
SpeechRecognitionErrorEvent
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the Web Speech API represents error messages
from the recognition service.
-
SpeechRecognitionErrorEventInit
-
-
SpeechRecognitionEvent
-
The interface of the Web Speech API represents the event object
for the
result
and nomatch
events, and contains all the data
associated with an interim or final speech recognition result.
-
SpeechRecognitionEventInit
-
-
SpeechRecognitionResult
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the Web Speech API represents a single
recognition match, which may contain multiple
SpeechRecognitionAlternative objects.
-
SpeechRecognitionResultList
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the Web Speech API represents a list of
SpeechRecognitionResult objects, or a single one if results are
being captured in
continuous
mode.
-
SpeechSynthesis
-
The interface of the Web Speech API is the controller interface
for the speech service; this can be used to retrieve information
about the synthesis voices available on the device, start and
pause speech, and other commands besides.
-
SpeechSynthesisErrorEvent
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the Web Speech API contains information about
any errors that occur while processing SpeechSynthesisUtterance
objects in the speech service.
-
SpeechSynthesisErrorEventInit
-
-
SpeechSynthesisEvent
-
The interface of the Web Speech API contains information about
the current state of SpeechSynthesisUtterance objects that have
been processed in the speech service.
-
SpeechSynthesisEventInit
-
-
SpeechSynthesisUtterance
-
The interface of the Web Speech API represents a speech
request.
It contains the content the speech service should read and
information about how to read it (e.g. language, pitch and
volume.)
-
SpeechSynthesisVoice
-
The interface of the Web Speech API represents a voice that the
system supports.
Every has its own relative speech service including information
about language, name and URI.
-
StaticRange
-
The DOM interface extends AbstractRange to provide a method to
specify a range of content in the DOM whose contents don't update
to reflect changes which occur within the DOM tree.
This interface offers the same set of properties and methods as
AbstractRange.
AbstractRange and are not available from web workers.
-
StaticRangeInit
-
-
StereoPannerNode
-
The interface of the Web Audio API represents a simple stereo
panner node that can be used to pan an audio stream left or
right. It is an AudioNode audio-processing module that
positions an incoming audio stream in a stereo image using a
low-cost equal-power panning algorithm.
The pan property takes a unitless value between
-1
(full
left pan) and 1
(full right pan). This interface was introduced
as a much simpler way to apply a simple panning effect than
having to use a full PannerNode.
-
StereoPannerOptions
-
-
Storage
-
The interface of the Web Storage API provides access to a
particular domain's session or local storage. It allows, for
example, the addition, modification, or deletion of stored data
items.
To manipulate, for instance, the session storage for a domain, a
call to
Window.sessionStorage
is made; whereas for local
storage the call is made to Window.localStorage
.
-
StorageEstimate
-
-
StorageEvent
-
The interface is implemented by the storage event, which is
sent to a window
when a storage area the window has access to is changed within
the context of another document.
-
StorageEventInit
-
-
StorageManager
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting
browsers.Experimental: This is an experimental technologyCheck
the Browser compatibility table carefully before using this in
production.
The interface of the Storage API provides an interface for
managing persistance permissions and estimating available
storage. You can get a reference to this interface using either
navigator.storage
or WorkerNavigator.storage
.
-
StreamPipeOptions
-
-
StructuredSerializeOptions
-
-
StylePropertyMap
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the CSS Typed Object Model API provides a
representation of a CSS declaration block that is an alternative
to CSSStyleDeclaration.
-
StylePropertyMapReadOnly
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the CSS Typed Object Model API provides a
read-only representation of a CSS declaration block that is an
alternative to CSSStyleDeclaration. Retrieve an instance of
this interface using
Element.computedStyleMap()
.
-
StyleSheet
-
An object implementing the interface represents a single style
sheet. CSS style sheets will further implement the more
specialized CSSStyleSheet interface.
-
StyleSheetList
-
The interface represents a list of CSSStyleSheet objects. An
instance of this object can be returned by
Document.styleSheets
.
It is an array-like object but can't be iterated over using
Array methods. However it can be iterated over in a standard
for
loop over its indices, or converted to an Array.
-
SubmitEvent
-
The interface defines the object used to represent an HTML
form's
submit
event. This event is fired at the <form>
when
the form's submit action is invoked.
-
SubmitEventInit
-
-
SubtleCrypto
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the Web Crypto API provides a number of
low-level cryptographic functions. Access to the features of is
obtained through the
subtle
property of the Crypto object you
get from the crypto
property.
-
SvcOutputMetadata
-
-
SVGAElement
-
The interface provides access to the properties of an
<a>
element, as well as methods to manipulate them.
-
SVGAngle
-
The interface is used to represent a value that can be an
<angle>
or <number>
value. An reflected through the animVal
attribute is always read only.
An object can be designated as read only, which means that
attempts to modify the object will result in an exception being
thrown.
An object can be associated with a particular element. The
associated element is used to determine which element's content
attribute to update if the object reflects an attribute. Unless
otherwise described, an object is not associated with any
element.
Every object operates in one of two modes:
-
SVGAnimatedAngle
-
-
SVGAnimatedBoolean
-
-
SVGAnimatedEnumeration
-
-
SVGAnimatedInteger
-
-
SVGAnimatedLength
-
The interface represents attributes of type
-
SVGAnimatedLengthList
-
-
SVGAnimatedNumber
-
-
SVGAnimatedNumberList
-
-
SVGAnimatedPoints
-
-
SVGAnimatedPreserveAspectRatio
-
-
SVGAnimatedRect
-
The interface is used for attributes of basic
SVGRect
which
can be animated.
-
SVGAnimatedString
-
The interface represents string attributes which can be animated
from each SVG declaration. You need to create SVG attribute
before doing anything else, everything should be declared inside
this.
-
SVGAnimatedTransformList
-
-
SVGAnimateElement
-
The interface corresponds to the
<animate>
element.
-
SVGAnimateMotionElement
-
The interface corresponds to the
<animateMotion>
element.
-
SVGAnimateTransformElement
-
The interface corresponds to the
<animateTransform>
element.
-
SVGAnimationElement
-
The interface is the base interface for all of the animation
element interfaces: SVGAnimateElement, SVGSetElement,
SVGAnimateColorElement
, SVGAnimateMotionElement and
SVGAnimateTransformElement.
-
SVGBoundingBoxOptions
-
-
SVGCircleElement
-
The interface is an interface for the
<circle>
element.
-
SVGClipPathElement
-
The interface provides access to the properties of
<clipPath>
elements, as well as methods to manipulate them.
-
SVGComponentTransferFunctionElement
-
The interface defines a base interface used by the component
transfer function interfaces.
-
SVGDefsElement
-
The interface corresponds to the
<defs>
element.
-
SVGDescElement
-
The interface corresponds to the
<desc>
element.
-
SVGDiscardElement
-
-
SVGElement
-
All of the SVG DOM interfaces that correspond directly to
elements in the SVG language derive from the interface.
-
SVGElementInstance
-
-
SVGEllipseElement
-
The interface provides access to the properties of
<ellipse>
elements.
-
SVGFEBlendElement
-
The interface corresponds to the
<feBlend>
element.
-
SVGFEColorMatrixElement
-
The interface corresponds to the
<feColorMatrix>
element.
-
SVGFEComponentTransferElement
-
The interface corresponds to the
<feComponentTransfer>
element.
-
SVGFECompositeElement
-
The interface corresponds to the
<feComposite>
element.
-
SVGFEConvolveMatrixElement
-
The interface corresponds to the
<feConvolveMatrix>
element.
-
SVGFEDiffuseLightingElement
-
The interface corresponds to the
<feDiffuseLighting>
element.
-
SVGFEDisplacementMapElement
-
The interface corresponds to the
<feDisplacementMap>
element.
-
SVGFEDistantLightElement
-
The interface corresponds to the
<feDistantLight>
element.
-
SVGFEDropShadowElement
-
The interface corresponds to the
<feDropShadow>
element.
-
SVGFEFloodElement
-
The interface corresponds to the
<feFlood>
element.
-
SVGFEFuncAElement
-
The interface corresponds to the
<feFuncA>
element.
-
SVGFEFuncBElement
-
The interface corresponds to the
<feFuncB>
element.
-
SVGFEFuncGElement
-
The interface corresponds to the
<feFuncG>
element.
-
SVGFEFuncRElement
-
The interface corresponds to the
<feFuncR>
element.
-
SVGFEGaussianBlurElement
-
The interface corresponds to the
<feGaussianBlur>
element.
-
SVGFEImageElement
-
The interface corresponds to the
<feImage>
element.
-
SVGFEMergeElement
-
The interface corresponds to the
<feMerge>
element.
-
SVGFEMergeNodeElement
-
The interface corresponds to the
<feMergeNode>
element.
-
SVGFEMorphologyElement
-
The interface corresponds to the
<feMorphology>
element.
-
SVGFEOffsetElement
-
The interface corresponds to the
<feOffset>
element.
-
SVGFEPointLightElement
-
The interface corresponds to the
<fePointLight>
element.
-
SVGFESpecularLightingElement
-
The interface corresponds to the
<feSpecularLighting>
element.
-
SVGFESpotLightElement
-
The interface corresponds to the
<feSpotLight>
element.
-
SVGFETileElement
-
The interface corresponds to the
<feTile>
element.
-
SVGFETurbulenceElement
-
The interface corresponds to the
<feTurbulence>
element.
-
SVGFilterElement
-
The interface provides access to the properties of
<filter>
elements, as well as methods to manipulate them.
-
SVGFilterPrimitiveStandardAttributes
-
-
SVGFitToViewBox
-
-
SVGForeignObjectElement
-
The interface provides access to the properties of
<foreignObject>
elements, as well as methods to manipulate
them.
-
SVGGElement
-
The interface corresponds to the
<g>
element.
-
SVGGeometryElement
-
The interface represents SVG elements whose rendering is defined
by geometry with an equivalent path, and which can be filled and
stroked. This includes paths and the basic shapes.
-
SVGGradientElement
-
The
SVGGradient
interface is a base interface used by
SVGLinearGradientElement and SVGRadialGradientElement.
-
SVGGraphicsElement
-
The interface represents SVG elements whose primary purpose is
to directly render graphics into a group.
-
SVGImageElement
-
The interface corresponds to the
<image>
element.
-
SVGLength
-
-
SVGLengthList
-
-
SVGLinearGradientElement
-
The interface corresponds to the
<linearGradient>
element.
-
SVGLineElement
-
The interface provides access to the properties of
<line>
elements, as well as methods to manipulate them.
-
SVGMarkerElement
-
The interface provides access to the properties of
<marker>
elements, as well as methods to manipulate them. The <marker>
element defines the graphics used for drawing marks on a shape.
-
SVGMaskElement
-
The interface provides access to the properties of
<mask>
elements, as well as methods to manipulate them.
-
SVGMetadataElement
-
The interface corresponds to the
<metadata>
element.
-
SVGMPathElement
-
The interface corresponds to the
<mpath>
element.
-
SVGNumber
-
The interface corresponds to the
<number>
basic data type.
An object can be designated as read only, which means that
attempts to modify the object will result in an exception being
thrown.
-
SVGNumberList
-
-
SVGPathElement
-
The interface corresponds to the
<path>
element.
-
SVGPatternElement
-
The interface corresponds to the
<pattern>
element.
-
SVGPointList
-
The interface represents a list of
SVGPoint
objects.
An can be designated as read-only, which means that attempts to
modify the object will result in an exception being thrown.
-
SVGPolygonElement
-
The interface provides access to the properties of
<polygon>
elements, as well as methods to manipulate them.
-
SVGPolylineElement
-
The interface provides access to the properties of
<polyline>
elements, as well as methods to manipulate them.
-
SVGPreserveAspectRatio
-
-
SVGRadialGradientElement
-
The interface corresponds to the
<RadialGradient>
element.
-
SVGRectElement
-
The interface provides access to the properties of
<rect>
elements, as well as methods to manipulate them.
-
SVGScriptElement
-
The interface corresponds to the SVG
<script>
element.
-
SVGSetElement
-
The interface corresponds to the
<set>
element.
-
SVGStopElement
-
The interface corresponds to the
<stop>
element.
-
SVGStringList
-
-
SVGStyleElement
-
-
SVGSVGElement
-
The interface provides access to the properties of
<svg>
elements, as well as methods to manipulate them. This interface
contains also various miscellaneous commonly-used utility
methods, such as matrix operations and the ability to control the
time of redraw on visual rendering devices.
-
SVGSwitchElement
-
The interface corresponds to the
<switch>
element.
-
SVGSymbolElement
-
The interface corresponds to the
<symbol>
element.
-
SVGTests
-
-
SVGTextContentElement
-
The interface is implemented by elements that support rendering
child text content. It is inherited by various text-related
interfaces, such as SVGTextElement, SVGTSpanElement,
SVGTRefElement
, SVGAltGlyphElement
and SVGTextPathElement.
-
SVGTextElement
-
The interface corresponds to the
<text>
elements.
-
SVGTextPathElement
-
The interface corresponds to the
<textPath>
element.
-
SVGTextPositioningElement
-
The interface is implemented by elements that support attributes
that position individual text glyphs. It is inherited by
SVGTextElement, SVGTSpanElement,
SVGTRefElement
and
SVGAltGlyphElement
.
-
SVGTitleElement
-
The interface corresponds to the
<title>
element.
-
SVGTransform
-
-
SVGTransformList
-
-
SVGTSpanElement
-
The interface represents a
<tspan>
element.
-
SVGUnitTypes
-
The interface defines a commonly used set of constants used for
reflecting
gradientUnits
, patternContentUnits
and other
similar attributes.
-
SVGURIReference
-
-
SVGUseElement
-
-
SVGUseElementShadowRoot
-
-
SVGViewElement
-
The interface provides access to the properties of
<view>
elements, as well as methods to manipulate them.
-
SyncEvent
-
Non-standard: This feature is non-standard and is not on a
standards track. Do not use it on production sites facing the
Web: it will not work for every user. There may also be large
incompatibilities between implementations and the behavior may
change in the future.
The interface represents a sync action that is dispatched on the
ServiceWorkerGlobalScope of a ServiceWorker.
This interface inherits from the ExtendableEvent interface.
-
SyncEventInit
-
-
SyncManager
-
The interface of the ServiceWorker API provides an interface for
registering and listing sync registrations.
-
Table
-
-
TableDescriptor
-
-
TaskAttributionTiming
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the Long Tasks API returns information about
the work involved in a long task and its associate frame context.
The frame context, also called the container, is the iframe,
embed or object that is being implicated, on the whole, for a
long task.
-
TaskController
-
-
TaskControllerInit
-
-
TaskPriorityChangeEvent
-
-
TaskPriorityChangeEventInit
-
-
TaskSignal
-
-
TestUtils
-
-
Text
-
The interface represents a text
node
in a DOM tree.
-
TextDecodeOptions
-
-
TextDecoder
-
The interface represents a decoder for a specific text encoding,
such as
UTF-8
, ISO-8859-2
, KOI8-R
, GBK
, etc. A decoder
takes a stream of bytes as input and emits a stream of code
points.
Note: This feature is available in Web Workers
-
TextDecoderCommon
-
-
TextDecoderOptions
-
-
TextDecoderStream
-
The interface of the Encoding API converts a stream of strings
into bytes in the UTF-8 encoding. It is the streaming equivalent
of TextDecoder.
-
TextDetector
-
-
TextEncoder
-
The interface takes a stream of code points as input and emits a
stream of UTF-8 bytes.
Note: This feature is available in Web Workers
-
TextEncoderCommon
-
-
TextEncoderEncodeIntoResult
-
-
TextEncoderStream
-
The interface of the Encoding API converts a stream of strings
into bytes in the UTF-8 encoding. It is the streaming equivalent
of TextEncoder.
-
TextFormat
-
-
TextFormatInit
-
-
TextFormatUpdateEvent
-
-
TextFormatUpdateEventInit
-
-
TextMetrics
-
The interface represents the dimensions of a piece of text in
the canvas; a instance can be retrieved using the
CanvasRenderingContext2D.measureText()
method.
-
TextTrack
-
The interface—part of the API for handling WebVTT (text tracks
on media presentations)—describes and controls the text track
associated with a particular
<track>
element.
-
TextTrackCue
-
is an abstract class which is used as the basis for the various
derived cue types, such as VTTCue; you will instead work with
those derived types. These cues represent strings of text
presented for some duration of time during the performance of a
TextTrack. The cue includes the start time (the time at which
the text will be displayed) and the end time (the time at which
it will be removed from the display), as well as other
information.
-
TextTrackCueList
-
The array-like object represents a dynamically updating list of
TextTrackCue objects.
This interface has no constructor. Retrieve an instance of this
object with
TextTrack.cues
which returns all of the cues in a
TextTrack object.
-
TextTrackList
-
The interface is used to represent a list of the text tracks
defined by the
<track>
element, with each track represented by
a separate textTrack
object in the list.
Retrieve an instance of this object with the textTracks
property of an HTMLMediaElement object.
For a given HTMLMediaElement object media, the individual
tracks can be accessed using:
-
TextUpdateEvent
-
-
TextUpdateEventInit
-
-
TimeEvent
-
The interface, a part of SVG SMIL animation, provides specific
contextual information associated with Time events.
-
TimeRanges
-
When loading a media resource for use by an
<audio>
or
<video>
element, the interface is used for representing the
time ranges of the media resource that have been buffered, the
time ranges that have been played, and the time ranges that are
seekable.
A object includes one or more ranges of time, each specified by
a starting time offset and an ending time offset. You reference
each time range by using the start()
and end()
methods,
passing the index number of the time range you want to retrieve.
-
TokenBinding
-
-
Touch
-
The interface represents a single contact point on a
touch-sensitive device. The contact point is commonly a finger or
stylus and the device may be a touchscreen or trackpad.
The Touch.radiusX, Touch.radiusY, and
Touch.rotationAngle
describe the area of contact between the user and the screen, the
touch area. This can be helpful when dealing with imprecise
pointing devices such as fingers. These values are set to
describe an ellipse that as closely as possible matches the
entire area of contact (such as the user's fingertip).
-
TouchEvent
-
The interface represents an UIEvent which is sent when the
state of contacts with a touch-sensitive surface changes. This
surface can be a touch screen or trackpad, for example. The event
can describe one or more points of contact with the screen and
includes support for detecting movement, addition and removal of
contact points, and so forth.
Touches are represented by the Touch object; each touch is
described by a position, size and shape, amount of pressure, and
target element. Lists of touches are represented by TouchList
objects.
-
TouchEventInit
-
-
TouchInit
-
-
TouchList
-
The interface represents a list of contact points on a touch
surface. For example, if the user has three fingers on the touch
surface (such as a screen or trackpad), the corresponding object
would have one Touch object for each finger, for a total of
three entries.
-
TrackEvent
-
The interface, which is part of the HTML DOM specification, is
used for events which represent changes to a set of available
tracks on an HTML media element; these events are
addtrack
and
removetrack
.
It's important not to confuse with the RTCTrackEvent
interface, which is used for tracks which are part of an
RTCPeerConnection.
Events based on are always sent to one of the media track list
types:
-
TrackEventInit
-
-
Transformer
-
-
TransformStream
-
The interface of the Streams API represents a set of
transformable data.
-
TransformStreamDefaultController
-
The interface of the Streams API provides methods to manipulate
the associated ReadableStream and WritableStream.
When constructing a TransformStream, the is created. It
therefore has no constructor. The way to get an instance of is
via the callback methods of TransformStream.TransformStream().
-
TransitionEvent
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface represents events providing information related to
transitions.
-
TransitionEventInit
-
-
TreeWalker
-
The object represents the nodes of a document subtree and a
position within them.
A can be created using the
Document.createTreeWalker()
method.
-
TrustedHTML
-
The interface of the
Trusted Types API
represents a string
that a developer can insert into an injection sink that will
render it as HTML. These objects are created via
TrustedTypePolicy.createHTML()
and therefore have no
constructor.
The value of a TrustedHTML object is set when the object is
created and cannot be changed by JavaScript as there is no setter
exposed.
-
TrustedScript
-
The interface of the
Trusted Types API
represents a string
with an uncompiled script body that a developer can insert into
an injection sink that might execute the script. These objects
are created via TrustedTypePolicy.createScript()
and therefore
have no constructor.
The value of a TrustedScript object is set when the object is
created and cannot be changed by JavaScript as there is no setter
exposed.
-
TrustedScriptURL
-
The interface of the
Trusted Types API
represents a string
that a developer can insert into an injection sink that will
parse it as a URL of an external script. These objects are
created via TrustedTypePolicy.createScriptURL()
and therefore
have no constructor.
The value of a TrustedScriptURL object is set when the object is
created and cannot be changed by JavaScript as there is no setter
exposed.
-
TrustedTypePolicy
-
The interface of the
Trusted Types API
defines a group of
functions which create TrustedType
objects.
A object is created by TrustedTypePolicyFactory.createPolicy()
to define a policy for enforcing security rules on input.
Therefore, has no constructor.
-
TrustedTypePolicyFactory
-
The interface of the
Trusted Types API
creates policies and
allows the verification of Trusted Type objects against created
policies.
-
TrustedTypePolicyOptions
-
-
UADataValues
-
-
UALowEntropyJSON
-
-
UIEvent
-
The interface represents simple user interface events.
derives from Event. Although the
UIEvent.initUIEvent()
method is kept for backward compatibility, you should create a
object using the UIEvent() constructor.
Several interfaces are direct or indirect descendants of this
one: MouseEvent, TouchEvent, FocusEvent, KeyboardEvent,
WheelEvent, InputEvent, and CompositionEvent.
-
UIEventInit
-
-
ULongRange
-
-
UncalibratedMagnetometer
-
-
UncalibratedMagnetometerReadingValues
-
-
UnderlyingSink
-
-
UnderlyingSource
-
-
Url
-
The interface is used to parse, construct, normalize, and encode
URLs. It works by providing properties which allow you to easily
read and modify the components of a URL.
You normally create a new object by specifying the URL as a
string when calling its constructor, or by providing a relative
URL and a base URL. You can then easily read the parsed
components of the URL or make changes to the URL.
If a browser doesn't yet support the
URL()
constructor, you
can access a URL object using the Window interface's property.
Be sure to check to see if any of your target browsers require
this to be prefixed.
Note: This feature is available in Web Workers
-
URLPattern
-
The interface matches URLs or parts of URLs against a pattern.
The pattern can contain capturing groups that extract parts of
the matched URL.
More information about the syntax of patterns can be found on
the API overview
page: URL Pattern API
-
URLPatternComponentResult
-
-
URLPatternInit
-
-
URLPatternResult
-
-
URLSearchParams
-
The interface defines utility methods to work with the query
string of a URL.
An object implementing can directly be used in a
for...of
structure to iterate over key/value pairs in the same order as
they appear in the query string, for example the following two
lines are equivalent:
[for (const key, value
of mySearchParams) {}
for (const key, value
of mySearchParams.entries()) {}
]
Note: This feature is available in Web Workers
-
Usb
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.Secure context: This feature is available only in
secure contexts (HTTPS), in some or all supporting browsers.
The interface of the WebUSB API provides attributes and methods
for finding and connecting USB devices from a web page.
Use
navigator.usb
to get access to the object.
The USB interface inherits from EventTarget.
-
USBAlternateInterface
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the WebUSB API provides information about a
particular configuration of an interface provided by the USB
device. An interface includes one or more alternate settings
which can configure a set of endpoints based on the operating
mode of the device.
-
USBConfiguration
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the WebUSB API provides information about a
particular configuration of a USB device and the interfaces that
it supports.
-
USBConnectionEvent
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the WebUSB API is the event type passed to
USB.onconnect
and USB.ondisconnect
when the user agent
detects that a new USB device has been connected or disconnected.
-
USBConnectionEventInit
-
-
USBControlTransferParameters
-
-
USBDevice
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the WebUSB API provides access to metadata
about a paired USB device and methods for controlling it.
-
USBDeviceFilter
-
-
USBDeviceRequestOptions
-
-
USBEndpoint
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the WebUSB API provides information about an
endpoint provided by the USB device. An endpoint represents a
unidirectional data stream into or out of a device.
-
USBInterface
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the WebUSB API provides information about an
interface provided by the USB device. An interface represents a
feature of the device which implements a particular protocol and
may contain endpoints for bidirectional communication.
-
USBInTransferResult
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the WebUSB API provides the result from a call
to the
transferIn()
and controlTransferIn()
methods of the
USBDevice interface. It represents the result from requesting a
transfer of data from the USB device to the USB host.
-
USBIsochronousInTransferPacket
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the WebUSB API is part of the response from a
call to the
isochronousTransferIn()
method of the USBDevice
interface. It represents the status of an individual packet from
a request to transfer data from the USB device to the USB host
over an isochronous endpoint.
-
USBIsochronousInTransferResult
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the WebUSB API provides the result from a call
to the
isochronousTransferIn()
method of the USBDevice
interface. It represents the result from requesting a transfer of
data from the USB device to the USB host.
-
USBIsochronousOutTransferPacket
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the WebUSB API is part of the response from a
call to the
isochronousTransferOut()
method of the USBDevice
interface. It represents the status of an individual packet from
a request to transfer data from the USB host to the USB device
over an isochronous endpoint.
-
USBIsochronousOutTransferResult
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the WebUSB API provides the result from a call
to the
isochronousTransferOut()
method of the USBDevice
interface. It represents the result from requesting a transfer of
data from the USB host to the USB device.
-
USBOutTransferResult
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the WebUSB API provides the result from a call
to the
transferOut()
and controlTransferOut()
methods of the
USBDevice interface. It represents the result from requesting a
transfer of data from the USB host to the USB device.
-
USBPermissionDescriptor
-
-
USBPermissionResult
-
-
USBPermissionStorage
-
-
ValidityState
-
The interface represents the validity states that an element can
be in, with respect to constraint validation. Together, they help
explain why an element's value fails to validate, if it's not
valid.
-
ValidityStateFlags
-
-
ValueEvent
-
-
ValueEventInit
-
-
VideoColorSpace
-
The interface of the WebCodecs API represents the color space of
a video.
-
VideoColorSpaceInit
-
-
VideoConfiguration
-
The dictionary of the Media Capabilities API is used to define
the video file being tested when calling the MediaCapabilities
methods
encodingInfo()
and decodingInfo()
to determine
whether or not the described video configuration is supported,
and how smoothly and how smooth and power-efficient it can be
handled.
-
VideoDecoder
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the WebCodecs API decodes chunks of video.
-
VideoDecoderConfig
-
-
VideoDecoderInit
-
-
VideoDecoderSupport
-
-
VideoEncoder
-
The interface of the WebCodecs API encodes VideoFrame objects.
-
VideoEncoderConfig
-
-
VideoEncoderEncodeOptions
-
-
VideoEncoderInit
-
-
VideoEncoderSupport
-
-
VideoFrame
-
The interface of the Web Codecs API represents a frame of a
video.
-
VideoFrameBufferInit
-
-
VideoFrameCopyToOptions
-
-
VideoFrameInit
-
-
VideoFrameMetadata
-
-
VideoPlaybackQuality
-
A object is returned by the
HTMLVideoElement.getVideoPlaybackQuality()
method and contains
metrics that can be used to determine the playback quality of a
video.
-
VideoTrack
-
The interface represents a single video track from a
<video>
element.
The most common use for accessing a object is to toggle its
selected property in order to make it the active video track
for its <video>
element.
-
VideoTrackGenerator
-
-
VideoTrackList
-
The interface is used to represent a list of the video tracks
contained within a
<video>
element, with each track represented
by a separate VideoTrack object in the list.
Retrieve an instance of this object with
HTMLMediaElement.videoTracks
. The individual tracks can be
accessed using array syntax or functions such as forEach()
for
example.
-
ViewportMediaStreamConstraints
-
-
ViewTimeline
-
-
ViewTimelineOptions
-
-
VirtualKeyboard
-
-
VisualViewport
-
The interface of the Visual Viewport API represents the visual
viewport for a given window. For a page containing iframes, each
iframe, as well as the containing page, will have a unique window
object. Each window on a page will have a unique representing the
properties associated with that window.
You can get a window's visual viewport using
Window.visualViewport
.
-
VTTCue
-
The interface—part of the API for handling WebVTT (text tracks
on media presentations)—describes and controls the text track
associated with a particular
<track>
element.
-
VTTRegion
-
The interface—part of the API for handling WebVTT (text tracks
on media presentations)—describes a portion of the video to
render a VTTCue onto.
-
WakeLock
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the
Screen Wake Lock API
prevents device
screens from dimming or locking when an application needs to keep
running.
The system wake lock is exposed through the global
Navigator.wakeLock
property.
-
WakeLockSentinel
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the
Screen Wake Lock API
provides a handle to
the underlying platform wake lock and can be manually released
and reacquired. An Object representing the wake lock is
returned via the navigator.wakelock.request()
method.
An acquired can be released manually via the release()
method,
or automatically via the platform wake lock. This can happen if
the document becomes inactive or looses visibility, if the device
is low on power or the user turns on a power save mode. Releasing
all instances of a given wake lock type will cause the underlying
platform wake lock to be released.
-
WatchAdvertisementsOptions
-
-
WaveShaperNode
-
The interface represents a non-linear distorter.
It is an AudioNode that uses a curve to apply a wave shaping
distortion to the signal. Beside obvious distortion effects, it
is often used to add a warm feeling to the signal.
A always has exactly one input and one output.
-
WaveShaperOptions
-
-
WebAssembly
-
-
WebAssemblyInstantiatedSource
-
-
WebGL2RenderingContext
-
The WebGL2RenderingContext interface provides the OpenGL ES 3.0
rendering context for the drawing surface of an HTML
<canvas>
element.
To get an object of this interface, call getContext()
on a
<canvas>
element, supplying "webgl2" as the argument:
var canvas = document.getElementById('myCanvas');
var gl = canvas.getContext('webgl2');
-
WebGL2RenderingContextBase
-
-
WebGL2RenderingContextOverloads
-
-
WebGLActiveInfo
-
The WebGLActiveInfo interface is part of the WebGL API and
represents the information returned by calling the
WebGLRenderingContext.getActiveAttrib()
and
WebGLRenderingContext.getActiveUniform()
methods.
-
WEBGLBlendEquationAdvancedCoherent
-
-
WebGLBuffer
-
The WebGLBuffer interface is part of the WebGL API and
represents an opaque buffer object storing data such as vertices
or colors.
-
WEBGLColorBufferFloat
-
The extension is part of the WebGL API and adds the ability to
render to 32-bit floating-point color buffers.
WebGL extensions are available using the
WebGLRenderingContext.getExtension()
method. For more
information, see also Using Extensions in the WebGL tutorial.
-
WEBGLCompressedTextureAstc
-
The extension is part of the WebGL API and exposes Adaptive
Scalable Texture Compression (ASTC) compressed texture formats to
WebGL.
For more information, see the article Using ASTC Texture
Compression for Game Assets by nvidia.
WebGL extensions are available using the
WebGLRenderingContext.getExtension()
method. For more
information, see also Using Extensions in the WebGL tutorial.
-
WEBGLCompressedTextureEtc
-
The extension is part of the WebGL API and exposes 10 ETC/EAC
compressed texture formats.
Compressed textures reduce the amount of memory needed to store
a texture on the GPU, allowing for higher resolution textures or
more of the same resolution textures.
WebGL extensions are available using the
WebGLRenderingContext.getExtension()
method. For more
information, see also Using Extensions in the WebGL tutorial.
-
WEBGLCompressedTextureEtc1
-
The extension is part of the WebGL API and exposes the ETC1
compressed texture format.
Compressed textures reduce the amount of memory needed to store
a texture on the GPU, allowing for higher resolution textures or
more of the same resolution textures.
WebGL extensions are available using the
WebGLRenderingContext.getExtension()
method. For more
information, see also Using Extensions in the WebGL tutorial.
-
WEBGLCompressedTexturePvrtc
-
The extension is part of the WebGL API and exposes four PVRTC
compressed texture formats.
Compressed textures reduce the amount of memory needed to store
a texture on the GPU, allowing for higher resolution textures or
more of the same resolution textures.
WebGL extensions are available using the
WebGLRenderingContext.getExtension()
method. For more
information, see also Using Extensions in the WebGL tutorial.
-
WEBGLCompressedTextureS3tc
-
The extension is part of the WebGL API and exposes four S3TC
compressed texture formats.
Compressed textures reduce the amount of memory needed to store
a texture on the GPU, allowing for higher resolution textures or
more of the same resolution textures.
WebGL extensions are available using the
WebGLRenderingContext.getExtension()
method. For more
information, see also Using Extensions in the WebGL tutorial.
-
WEBGLCompressedTextureS3tcSrgb
-
The extension is part of the WebGL API and exposes four S3TC
compressed texture formats for the sRGB colorspace.
Compressed textures reduce the amount of memory needed to store
a texture on the GPU, allowing for higher resolution textures or
more of the same resolution textures.
WebGL extensions are available using the
WebGLRenderingContext.getExtension()
method. For more
information, see also Using Extensions in the WebGL tutorial.
-
WebGLContextAttributes
-
-
WebGLContextEvent
-
The WebContextEvent interface is part of the WebGL API and is an
interface for an event that is generated in response to a status
change to the WebGL rendering context.
-
WebGLContextEventInit
-
-
WEBGLDebugRendererInfo
-
The extension is part of the WebGL API and exposes two constants
with information about the graphics driver for debugging
purposes.
Depending on the privacy settings of the browser, this extension
might only be available to privileged contexts. Generally, the
graphics driver information should only be used in edge cases to
optimize your WebGL content or to debug GPU problems. The
WebGLRenderingContext.getParameter()
method can help you to
detect which features are supported and the
failIfMajorPerformanceCaveat
context attribute lets you control
if a context should be returned at all, if the performance would
be dramatically slow.
WebGL extensions are available using the
WebGLRenderingContext.getExtension()
method. For more
information, see also Using Extensions in the WebGL tutorial.
-
WEBGLDebugShaders
-
The extension is part of the WebGL API and exposes a method to
debug shaders from privileged contexts.
This extension is not directly available to web sites as the way
of how the shader is translated may uncover
personally-identifiable information to the web page about the
kind of graphics card in the user's computer.
WebGL extensions are available using the
WebGLRenderingContext.getExtension()
method. For more
information, see also Using Extensions in the WebGL tutorial.
-
WEBGLDepthTexture
-
The extension is part of the WebGL API and defines 2D depth and
depth-stencil textures.
WebGL extensions are available using the
WebGLRenderingContext.getExtension()
method. For more
information, see also Using Extensions in the WebGL tutorial.
-
WEBGLDrawBuffers
-
The extension is part of the WebGL API and enables a fragment
shader to write to several textures, which is useful for deferred
shading, for example.
WebGL extensions are available using the
WebGLRenderingContext.getExtension()
method. For more
information, see also Using Extensions in the WebGL tutorial.
-
WEBGLDrawInstancedBaseVertexBaseInstance
-
-
WebGLFramebuffer
-
The WebGLFramebuffer interface is part of the WebGL API and
represents a collection of buffers that serve as a rendering
destination.
-
WEBGLLoseContext
-
The WEBGL_lose_context extension is part of the WebGL API and
exposes functions to simulate losing and restoring a
WebGLRenderingContext.
WebGL extensions are available using the
WebGLRenderingContext.getExtension()
method. For more
information, see also Using Extensions in the WebGL tutorial.
-
WEBGLMultiDraw
-
The extension is part of the
WebGL API and allows to render more
than one primitive with a single function call. This can
improve a WebGL application's performance
as it reduces binding costs in the renderer and speeds up GPU
thread time with uniform data.
-
WEBGLMultiDrawInstancedBaseVertexBaseInstance
-
-
WebGLObject
-
-
WebGLProgram
-
The is part of the WebGL API and is a combination of two
compiled WebGLShaders consisting of a vertex shader and a
fragment shader (both written in GLSL).
-
WebGLQuery
-
The interface is part of the WebGL 2 API and provides ways to
asynchronously query for information. By default, occlusion
queries and primitive queries are available.
Another kind of queries are disjoint timer queries, which allow
you to measure performance and profiling of your GPU. Disjoint
timer queries are available with the
EXT_disjoint_timer_query
extension only.
-
WebGLRenderbuffer
-
The WebGLRenderbuffer interface is part of the WebGL API and
represents a buffer that can contain an image, or that can be a
source or target of a rendering operation.
-
WebGLRenderingContext
-
The interface provides an interface to the OpenGL ES 2.0
graphics rendering context for the drawing surface of an HTML
<canvas>
element.
To get an access to a WebGL context for 2D and/or 3D graphics
rendering, call getContext()
on a <canvas>
element, supplying
"webgl" as the argument:
var canvas = document.getElementById('myCanvas');
var gl = canvas.getContext('webgl');
Once you have the WebGL rendering context for a canvas, you can
render within it. The WebGL tutorial has more information,
examples, and resources on how to get started with WebGL.
If you require a WebGL 2.0 context, see
WebGL2RenderingContext; this supplies access to an
implementation of OpenGL ES 3.0 graphics.
-
WebGLRenderingContextBase
-
-
WebGLRenderingContextOverloads
-
-
WebGLSampler
-
The interface is part of the WebGL 2 API and stores sampling
parameters for WebGLTexture access inside of a shader.
-
WebGLShader
-
The WebGLShader is part of the WebGL API and can either be a
vertex or a fragment shader. A WebGLProgram requires both types
of shaders.
-
WebGLShaderPrecisionFormat
-
The WebGLShaderPrecisionFormat interface is part of the WebGL
API and represents the information returned by calling the
WebGLRenderingContext.getShaderPrecisionFormat()
method.
-
WebGLSync
-
The interface is part of the WebGL 2 API and is used to
synchronize activities between the GPU and the application.
-
WebGLTexture
-
The WebGLTexture interface is part of the WebGL API and
represents an opaque texture object providing storage and state
for texturing operations.
-
WebGLTimerQueryEXT
-
-
WebGLTransformFeedback
-
The interface is part of the WebGL 2 API and enables transform
feedback, which is the process of capturing primitives generated
by vertex processing. It allows to preserve the post-transform
rendering state of an object and resubmit this data multiple
times.
-
WebGLUniformLocation
-
The WebGLUniformLocation interface is part of the WebGL API and
represents the location of a uniform variable in a shader
program.
-
WebGLVertexArrayObject
-
The interface is part of the WebGL 2 API, represents vertex
array objects (VAOs) pointing to vertex array data, and provides
names for different sets of vertex data.
-
WebGLVertexArrayObjectOES
-
-
WebSocket
-
The object provides the API for creating and managing a
WebSocket connection to a server, as well as for sending and
receiving data on the connection.
To construct a , use the WebSocket() constructor.
Note: This feature is available in Web Workers
-
WebTransport
-
-
WebTransportBidirectionalStream
-
-
WebTransportCloseInfo
-
-
WebTransportDatagramDuplexStream
-
-
WebTransportDatagramStats
-
-
WebTransportError
-
-
WebTransportErrorInit
-
-
WebTransportHash
-
-
WebTransportOptions
-
-
WebTransportReceiveStream
-
-
WebTransportReceiveStreamStats
-
-
WebTransportSendStream
-
-
WebTransportSendStreamStats
-
-
WebTransportStats
-
-
WheelEvent
-
The interface represents events that occur due to the user
moving a mouse wheel or similar input device.
-
WheelEventInit
-
-
Window
-
The interface represents a window containing a DOM document; the
document property points to the DOM document loaded in that
window.
A window for a given document can be obtained using the
document.defaultView
property.
A global variable, window, representing the window in which
the script is running, is exposed to JavaScript code.
The interface is home to a variety of functions, namespaces,
objects, and constructors which are not necessarily directly
associated with the concept of a user interface window. However,
the interface is a suitable place to include these items that
need to be globally available. Many of these are documented in
the JavaScript Reference and the DOM Reference.
In a tabbed browser, each tab is represented by its own object;
the global window seen by JavaScript code running within a
given tab always represents the tab in which the code is running.
That said, even in a tabbed browser, some properties and methods
still apply to the overall window that contains the tab, such as
resizeTo()
and innerHeight. Generally, anything that can't
reasonably pertain to a tab pertains to the window instead.
-
WindowClient
-
The interface of the ServiceWorker API represents the scope of a
service worker client that is a document in a browsing context,
controlled by an active worker. The service worker client
independently selects and uses a service worker for its own
loading and sub-resources.
-
WindowControlsOverlay
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.Secure context: This feature is available only in
secure contexts (HTTPS), in some or all supporting browsers.
-
WindowControlsOverlayGeometryChangeEvent
-
The interface of the Window Controls Overlay API is passed to
geometrychange
when the size or visibility of a desktop
Progress Web App's title bar region changes.
-
WindowControlsOverlayGeometryChangeEventInit
-
-
WindowEventHandlers
-
The mixin describes the event handlers common to several
interfaces like Window, or HTMLBodyElement and
HTMLFrameSetElement. Each of these interfaces can implement
additional specific event handlers.
-
WindowLocalStorage
-
-
WindowOrWorkerGlobalScope
-
-
WindowPostMessageOptions
-
-
WindowSessionStorage
-
-
Worker
-
The interface of the Web Workers API represents a background
task that can be created via script, which can send messages back
to its creator.
Creating a worker is done by calling the
Worker("path/to/worker/script") constructor.
Workers may themselves spawn new workers, as long as those
workers are hosted at the same origin as the parent page. (Note:
nested workers are not yet implemented in WebKit).
Not all interfaces and functions are available to scripts inside
a . Workers may use XMLHttpRequest for network communication,
but its
responseXML
and channel
attributes are always null
.
(fetch is also available, with no such restrictions.)
-
WorkerGlobalScope
-
The interface of the Web Workers API is an interface
representing the scope of any worker. Workers have no browsing
context; this scope contains the information usually conveyed by
Window objects — in this case event handlers, the console or
the associated WorkerNavigator object. Each has its own event
loop.
This interface is usually specialized by each worker type:
DedicatedWorkerGlobalScope for dedicated workers,
SharedWorkerGlobalScope for shared workers, and
ServiceWorkerGlobalScope for ServiceWorker. The self property
returns the specialized scope for each context.
-
WorkerLocation
-
The interface defines the absolute location of the script
executed by the Worker. Such an object is initialized for each
worker and is available via the
WorkerGlobalScope.location
property obtained by calling self.location
.
This interface is only visible from inside a JavaScript script
executed in the context of a Web worker.
-
WorkerNavigator
-
The interface represents a subset of the Navigator interface
allowed to be accessed from a Worker. Such an object is
initialized for each worker and is available via the
self.navigator
property.
-
WorkerOptions
-
-
Worklet
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface is a lightweight version of
Web Workers
and
gives developers access to low-level parts of the rendering
pipeline.
With Worklets, you can run JavaScript and WebAssembly code to do
graphics rendering or audio processing where high performance is
required.
-
WorkletAnimation
-
-
WorkletAnimationEffect
-
-
WorkletGlobalScope
-
-
WorkletGroupEffect
-
-
WorkletOptions
-
-
WritableStream
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the Streams API provides a standard abstraction
for writing streaming data to a destination, known as a sink.
This object comes with built-in backpressure and queuing.
-
WritableStreamDefaultController
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the Streams API represents a controller
allowing control of a WritableStream's state. When constructing
a WritableStream, the underlying sink is given a corresponding
instance to manipulate.
-
WritableStreamDefaultWriter
-
Experimental: This is an experimental technologyCheck the
Browser compatibility table carefully before using this in
production.
The interface of the Streams API is the object returned by
WritableStream.getWriter()
and once created locks the writer to
the WritableStream ensuring that no other streams can write to
the underlying sink.
-
WriteParams
-
-
XMLDocument
-
The XMLDocument interface represents an XML document. It
inherits from the generic Document and does not add any
specific methods or properties to it: nevertheless, several
algorithms behave differently with the two types of documents.
-
XMLHttpRequest
-
(XHR) objects are used to interact with servers. You can
retrieve data from a URL without having to do a full page
refresh. This enables a Web page to update just part of a page
without disrupting what the user is doing.
is used heavily in AJAX programming.
-
XMLHttpRequestEventTarget
-
is the interface that describes the event handlers you can
implement in an object that will handle events for an
XMLHttpRequest.
-
XMLHttpRequestUpload
-
-
XMLSerializer
-
The interface provides the
serializeToString()
method to
construct an XML string representing a DOM tree.
-
XPathEvaluator
-
The interface allows to compile and evaluate XPath expressions.
It is implemented by the Document interface.
-
XPathEvaluatorBase
-
-
XPathExpression
-
This interface is a compiled XPath expression that can be
evaluated on a document or specific node to return information
from its DOM tree.
This is useful when an expression will be reused in an
application, because it is just compiled once and all namespace
prefixes which occur within the expression are preresolved.
Objects of this type are created by calling
XPathEvaluator.createExpression()
.
-
XPathNSResolver
-
The interface permits prefix strings in an XPath expression to
be properly bound to namespace URI strings.
The XPathEvaluator interface can construct an implementation
of from a node, or the interface may be implemented by any
application.
-
XPathResult
-
The interface represents the results generated by evaluating an
XPath expression within the context of a given node.
Since XPath expressions can result in a variety of result types,
this interface makes it possible to determine and handle the type
and value of the result.
-
XRAnchor
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface creates anchors which keep track of the pose that
is fixed relative to the real world. With anchors, you can
specify poses in the world that need to be updated to correctly
reflect the evolving understanding of the world, such that the
poses remain aligned with the same place in the physical world.
That helps to build an illusion that the placed objects are
really present in the user’s environment.
-
XRAnchorSet
-
The interface exposes a collection of anchors. It is returned by
XRFrame.trackedAnchors
and is a Set-like object.
-
XRBoundedReferenceSpace
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The WebXR Device API's interface describes a virtual world
reference space which has preset boundaries. This extends
XRReferenceSpace, which describes an essentially unrestricted
space around the viewer's position. These bounds are defined
using an array of points, each of which defines a vertex in a
polygon inside which the user is allowed to move.
This is typically used when the XR system is capable of tracking
the user's physical movement within a limited distance of their
starting position. The specified bounds may, in fact, describe
the shape and size of the room the user is located in, in order
to let the WebXR site or application prevent the user from
colliding with the walls or other obstacles in the real world. At
a minimum, the boundaries indicate the area in which the XR
device is capable of tracking the user's movement. See the
article Using bounded reference spaces for details on how bounded
spaces work and why they're useful.
-
XRCompositionLayer
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the WebXR Device API is a base class that
defines a set of common properties and behaviors for WebXR layer
types. It is not constructable on its own.
Several layer types inherit from :
-
XRCPUDepthInformation
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface contains depth information from the CPU (returned
by
XRFrame.getDepthInformation()
).
-
XRCubeLayer
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the WebXR Device API is a layer that renders
directly from a cubemap and projects it onto the inside faces of
a cube.
requires the
layers
feature to be enabled for the
XRSession. You can request it in XRSystem.requestSession()
.
To create a new , call XRWebGLBinding.createCubeLayer()
.
To present layers to the XR device, add them to the layers
render state using XRSession.updateRenderState()
.
-
XRCubeLayerInit
-
-
XRCylinderLayer
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the WebXR Device API is a layer that takes up a
curved rectangular space in the virtual environment. Only the
front of the layer is visible.
requires the
layers
feature to be enabled for the
XRSession. You can request it in XRSystem.requestSession()
.
To create a new , call either:
-
XRCylinderLayerInit
-
-
XRDepthInformation
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface contains information about the distance from the
user’s device to the real-world geometry in the user’s
environment.
This interface is the parent of:
-
XRDepthStateInit
-
-
XRDOMOverlayInit
-
-
XRDOMOverlayState
-
-
XREquirectLayer
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the WebXR Device API is a layer that maps
equirectangular coded data onto the inside of a sphere.
requires the
layers
feature to be enabled for the
XRSession. You can request it in XRSystem.requestSession()
.
To create a new , call either:
-
XREquirectLayerInit
-
-
XRFrame
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
A WebXR Device API object is passed into the
requestAnimationFrame()
callback function and provides access
to the information needed in order to render a single frame of
animation for an XRSession describing a VR or AR scene. Events
which communicate the tracking state of objects also provide an
reference as part of their structure.
In addition to providing a reference to the XRSession for
which this frame is to be rendered, the getViewerPose()
method
is provided to obtain the XRViewerPose describing the viewer's
position and orientation in space, and getPose()
can be used to
create an XRPose describing the relative position of one
XRSpace relative to another.
-
XRHand
-
The interface is pair iterator (an ordered map) with the key
being the hand joints and the value being an XRJointSpace.
is returned by
XRInputSource.hand
.
-
XRHitTestOptionsInit
-
-
XRHitTestResult
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the WebXR Device API contains a single result
of a hit test. You can get an array of objects for a frame by
calling
XRFrame.getHitTestResults()
.
-
XRHitTestSource
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the WebXR Device API handles hit test
subscriptions. You can get an object by using the
XRSession.requestHitTestSource()
method.
This object doesn't itself contain hit test results, but it is
used to compute hit tests for each XRFrame by calling
XRFrame.getHitTestResults()
, which returns XRHitTestResult
objects.
-
XRInputSource
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The WebXR Device API's interface describes a single source of
control input which is part of the user's WebXR-compatible
virtual or augmented reality system. The device is specific to
the platform being used, but provides the direction in which it
is being aimed and optionally may generate events if the user
triggers performs actions using the device.
-
XRInputSourceArray
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface represents a live list of WebXR input sources, and
is used as the return value of the XRSession property
inputSources
. Each entry is an XRInputSource representing one
input device connected to the WebXR system.
In addition to being able to access the input sources in the
list using standard array notation (that is, with index numbers
inside square brackets), methods are available to allow the use
of iterators and the forEach()
method is also available.
-
XRInputSourceEvent
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The WebXR Device API's interface describes an event which has
occurred on a WebXR user input device such as a hand controller,
gaze tracking system, or motion tracking system. More
specifically, they represent a change in the state of an
XRInputSource.
To learn more about handling inputs in a WebXR project, see the
article Inputs and input sources.
-
XRInputSourceEventInit
-
-
XRInputSourcesChangeEvent
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The WebXR Device API interface is used to represent the
inputsourceschange
event sent to an XRSession when the set of
available WebXR input controllers changes.
-
XRInputSourcesChangeEventInit
-
-
XRJointPose
-
The interface is an XRPose with additional information about
the size of the skeleton joint it represents.
-
XRJointSpace
-
The interface is an XRSpace and represents the position and
orientation of an XRHand joint.
-
XRLayer
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the WebXR Device API is the base class for
WebXR layer types. It inherits methods from EventTarget.
-
XRLayerEvent
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the WebXR Device API is the event type for
events related to a change of state of an XRLayer object. These
events occur, for example, when the layer needs to be redrawn.
-
XRLayerEventInit
-
-
XRLayerInit
-
-
XRLightEstimate
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the WebXR Device API provides the estimated
lighting values for an XRLightProbe at the time represented by
an XRFrame.
To get an object, call the
XRFrame.getLightEstimate()
method.
-
XRLightProbe
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the WebXR Device API contains lighting
information at a given point in the user's environment. You can
get an
XRLighting
object using the
XRSession.requestLightProbe()
method.
This object doesn't itself contain lighting values, but it is
used to collect lighting states for each XRFrame. See
XRLightEstimate for the estimated lighting values for an .
-
XRLightProbeInit
-
-
XRMediaBinding
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface is used to create layers that display the content
of an HTMLVideoElement.
-
XRMediaCylinderLayerInit
-
-
XRMediaEquirectLayerInit
-
-
XRMediaLayerInit
-
-
XRMediaQuadLayerInit
-
-
XRPermissionDescriptor
-
-
XRPermissionStatus
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface defines the object returned by calling
navigator.permissions.query()
for the xr
permission name; it
indicates whether or not the app or site has permission to use
WebXR, and may be monitored over time for changes to that
permissions tate.
-
XRPose
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
is a WebXR API interface representing a position and
orientation in the 3D space, relative to the XRSpace within
which it resides. The XRSpace—which is either an
XRReferenceSpace or an XRBoundedReferenceSpace—defines the
coordinate system used for the pose and, in the case of an
XRViewerPose, its underlying views.
To obtain the for the XRSpace used as the local coordinate
system of an object, call
XRFrame.getPose()
, specifying that
local XRSpace and the space to which you wish to convert:
thePose = xrFrame.getPose(localSpace, baseSpace);
The pose for a viewer (or camera) is represented by the
XRViewerPose subclass of . This is obtained using
XRFrame.getViewerPose()
instead of getPose()
, specifying a
reference space which has been adjusted to position and orient
the node to provide the desired viewing position and angle:
viewerPose = xrFrame.getViewerPose(adjReferenceSpace);
Here, adjReferenceSpace
is a reference space which has been
updated using the base frame of reference for the frame and any
adjustments needed to position the viewer based on movement or
rotation which is being supplied from a source other than the XR
device, such as keyboard or mouse inputs.
See the article Movement, orientation, and motion for further
details and an example with thorough explanations of what's going
on.
-
XRProjectionLayer
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the WebXR Device API is a layer that fills the
entire view of the observer and is refreshed close to the
device's native frame rate.
is supported by all XRSession objects (no
layers
feature
descriptor is needed).
-
XRProjectionLayerInit
-
-
XRQuadLayer
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the WebXR Device API is a layer that takes up a
flat rectangular space in the virtual environment. An has no
thickness. It is a two-dimensional object positioned and oriented
in 3D space. The position of a quad refers to the center of the
quad. Only the front of the layer is visible.
requires the
layers
feature to be enabled for the
XRSession. You can request it in XRSystem.requestSession()
.
To create a new , call either:
-
XRQuadLayerInit
-
-
XRRay
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the WebXR Device API is a geometric ray
described by an origin point and a direction vector.
objects can be passed to
XRSession.requestHitTestSource()
or
XRSession.requestHitTestSourceForTransientInput()
to perform
hit testing.
-
XRRayDirectionInit
-
-
XRReferenceSpace
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The WebXR Device API's interface describes the coordinate system
for a specific tracked entity or object within the virtual world
using a specified tracking behavior. The tracking behavior is
defined by the selected reference space type. It expands upon the
base class, XRSpace, by adding support for several different
tracking behaviors as well as to request a new reference space
which describes the offset transform between the tracked object
and another location in the world.
All reference spaces—with the sole exception being bounded
reference spaces—are described using the type. Bounded spaces are
implemented as XRBoundedReferenceSpace objects. These are
special spaces which let you establish a perimeter within which
it's "safe" for the viewer to move. For XR systems that allow the
user to physically move around, such as those that track movement
with a real-world camera, this boundary establishes the edges of
the area the user is able to move around in, whether due to
physical obstacles or due to limitations of the XR hardware. See
the article Using bounded reference spaces to protect the viewer
for more on using boundaries to keep the user from colliding with
obstacles both physical and virtual.
-
XRReferenceSpaceEvent
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The WebXR Device API interface represents an event sent to an
XRReferenceSpace. Currently, the only event that uses this type
is the
reset
event.
-
XRReferenceSpaceEventInit
-
-
XRRenderState
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the WebXR Device API contains configurable
values which affect how the imagery generated by an XRSession
gets composited. These properties include the range of distances
from the viewer within which content should be rendered, the
vertical field of view (for inline presentations), and a
reference to the XRWebGLLayer being used as the target for
rendering the scene prior to it being presented on the XR
device's display or displays.
When you apply changes using the XRSession method
updateRenderState()
, the specified changes take effect after
the current animation frame has completed, but before the next
one begins.
-
XRRenderStateInit
-
-
XRRigidTransform
-
The is a WebXR API interface that represents the 3D geometric
transform described by a position and orientation.
is used to specify transforms throughout the WebXR APIs,
including:
-
XRSession
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The WebXR Device API's interface represents an ongoing XR
session, providing methods and properties used to interact with
and control the session. To open a WebXR session, use the
XRSystem interface's
requestSession()
method.
With methods, you can poll the viewer's position and orientation
(the XRViewerPose), gather information about the user's
environment, and present imagery to the user. supports both
inline and immersive virtual and augmented reality modes.
-
XRSessionEvent
-
The WebXR Device API's interface describes an event which
indicates the change of the state of an XRSession. These events
occur, for example, when the session ends or the visibility of
its context changes.
-
XRSessionEventInit
-
-
XRSessionInit
-
-
XRSessionSupportedPermissionDescriptor
-
-
XRSpace
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the WebXR Device API is an abstract interface
providing a common basis for every class which represents a
virtual coordinate system within the virtual world, in which its
origin corresponds to a physical location. Spatial data in WebXR
is always expressed relative to an object based upon one of the
descendant interfaces of , at the time at which a given XRFrame
takes place.
Numeric values such as pose positions are thus coordinates in
the corresponding , relative to that space's origin.
-
XRSubImage
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the WebXR Device API represents what viewport
of the GPU texture to use for rendering.
-
XRSystem
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The WebXR Device API interface provides methods which let you
get access to an XRSession object representing a WebXR session.
With that XRSession in hand, you can use it to interact with
the Augmented Reality (AR) or Virtual Reality (VR) device.
-
XRTransientInputHitTestOptionsInit
-
-
XRTransientInputHitTestResult
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the WebXR Device API contains an array of
results of a hit test for transient input, grouped by input
source.
You can get an array of XRHitTestResult objects for a frame by
calling
XRFrame.getHitTestResultsForTransientInput()
.
-
XRTransientInputHitTestSource
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the WebXR Device API handles transient input
hit test subscriptions. You can get an object by calling the
XRSession.requestHitTestSourceForTransientInput()
.
This object doesn't itself contain transient input hit test
results, but it is used to compute hit tests for each XRFrame
by calling XRFrame.getHitTestResultsForTransientInput()
, which
returns XRTransientInputHitTestResult objects.
-
XRView
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The WebXR Device API's interface describes a single view into
the XR scene for a specific frame, providing orientation and
position information for the viewpoint. You can think of it as a
description of a specific eye or camera and how it views the
world. A 3D frame will involve two views, one for each eye,
separated by an appropriate distance which approximates the
distance between the viewer's eyes. This allows the two views,
when projected in isolation into the appropriate eyes, to
simulate a 3D world.
-
XRViewerPose
-
The WebXR Device API interface represents the pose (the position
and orientation) of a viewer's point of view on the scene. Each
can have multiple views to represent, for example, the slight
separation between the left and right eye.
This view can represent anything from the point-of-view of a
user's XR headset to the viewpoint represented by a player's
movement of an avatar using mouse and keyboard, presented on the
screen, to a virtual camera capturing the scene for a spectator.
-
XRViewport
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The WebXR Device API's interface provides properties used to
describe the size and position of the current viewport within the
XRWebGLLayer being used to render the 3D scene.
-
XRWebGLBinding
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface is used to create layers that have a GPU backend.
-
XRWebGLDepthInformation
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface contains depth information from the GPU/WebGL
(returned by
XRWebGLBinding.getDepthInformation()
).
-
XRWebGLLayer
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface of the WebXR Device API provides a linkage between
the WebXR device (or simulated XR device, in the case of an
inline session) and a WebGL context used to render the scene for
display on the device. In particular, it provides access to the
WebGL framebuffer and viewport to ease access to the context.
Although is currently the only type of framebuffer layer
supported by WebGL, it's entirely possible that future updates to
the WebXR specification may allow for other layer types and
corresponding image sources.
-
XRWebGLLayerInit
-
-
XRWebGLSubImage
-
Secure context: This feature is available only in secure
contexts (HTTPS), in some or all supporting browsers.
The interface is used during rendering of WebGL layers.
-
XSLTProcessor
-
Non-standard: This feature is non-standard and is not on a
standards track. Do not use it on production sites facing the
Web: it will not work for every user. There may also be large
incompatibilities between implementations and the behavior may
change in the future.Experimental: This is an experimental
technologyCheck the Browser compatibility table carefully before
using this in production.
Typedefs
-
AnimatorInstanceConstructor
= dynamic Function(dynamic options, [dynamic state])
-
-
AudioDataOutputCallback
= dynamic Function(AudioData output)
-
-
AudioWorkletProcessCallback
= dynamic Function(Iterable<Iterable<Float32List>> inputs, Iterable<Iterable<Float32List>> outputs, dynamic parameters)
-
-
AudioWorkletProcessorConstructor
= dynamic Function(dynamic options)
-
-
BlobCallback
= dynamic Function(Blob? blob)
-
-
CreateHTMLCallback
= dynamic Function(String input, [dynamic arguments1, dynamic arguments2, dynamic arguments3])
-
-
CreateScriptCallback
= dynamic Function(String input, [dynamic arguments1, dynamic arguments2, dynamic arguments3])
-
-
CreateScriptURLCallback
= dynamic Function(String input, [dynamic arguments1, dynamic arguments2, dynamic arguments3])
-
-
CustomElementConstructor
= dynamic Function()
-
-
DecodeErrorCallback
= dynamic Function(Exception error)
-
-
DecodeSuccessCallback
= dynamic Function(AudioBuffer decodedData)
-
-
EffectCallback
= dynamic Function(double? progress, dynamic currentTarget, Animation animation)
-
-
EncodedAudioChunkOutputCallback
= dynamic Function(EncodedAudioChunk output, [EncodedAudioChunkMetadata? metadata])
-
-
EncodedVideoChunkOutputCallback
= dynamic Function(EncodedVideoChunk chunk, [EncodedVideoChunkMetadata? metadata])
-
-
ErrorCallback
= dynamic Function(Exception err)
-
-
EventListener
= dynamic Function(Event event)
-
-
FileCallback
= dynamic Function(File file)
-
-
FileSystemEntriesCallback
= dynamic Function(Iterable<FileSystemEntry> entries)
-
-
FileSystemEntryCallback
= dynamic Function(FileSystemEntry entry)
-
-
FnFunction
= dynamic Function([dynamic arguments1, dynamic arguments2, dynamic arguments3])
-
-
FrameRequestCallback
= dynamic Function(double time)
-
-
FunctionStringCallback
= dynamic Function(String data)
-
-
GenerateAssertionCallback
= dynamic Function(String contents, String origin, RTCIdentityProviderOptions options)
-
-
IdleRequestCallback
= dynamic Function(IdleDeadline deadline)
-
-
IntersectionObserverCallback
= dynamic Function(Iterable<IntersectionObserverEntry> entries, IntersectionObserver observer)
-
-
LaunchConsumer
= dynamic Function(LaunchParams params)
-
-
LoadDocumentCallback
= dynamic Function(String url, [LoadDocumentOptions? options])
-
-
LockGrantedCallback
= dynamic Function(Lock? lock)
-
-
MediaSessionActionHandler
= dynamic Function(MediaSessionActionDetails details)
-
-
MutationCallback
= dynamic Function(Iterable<MutationRecord> mutations, MutationObserver observer)
-
-
NavigationInterceptHandler
= dynamic Function()
-
-
NavigatorUserMediaErrorCallback
= dynamic Function(Exception error)
-
-
NavigatorUserMediaSuccessCallback
= dynamic Function(MediaStream stream)
-
-
NotificationPermissionCallback
= dynamic Function(NotificationPermission permission)
-
-
OnBeforeUnloadEventHandlerNonNull
= dynamic Function(Event event)
-
-
OnErrorEventHandlerNonNull
= dynamic Function(dynamic event, [String? source, int? lineno, int? colno, dynamic error])
-
-
PerformanceObserverCallback
= dynamic Function(PerformanceObserverEntryList entries, PerformanceObserver observer, [PerformanceObserverCallbackOptions? options])
-
-
PositionCallback
= dynamic Function(GeolocationPosition position)
-
-
PositionErrorCallback
= dynamic Function(GeolocationPositionError positionError)
-
-
PressureUpdateCallback
= dynamic Function(Iterable<PressureRecord> changes, PressureObserver observer)
-
-
QueuingStrategySize
= dynamic Function(dynamic chunk)
-
-
RemotePlaybackAvailabilityCallback
= dynamic Function(bool available)
-
-
ReportingObserverCallback
= dynamic Function(Iterable<Report> reports, ReportingObserver observer)
-
-
ResizeObserverCallback
= dynamic Function(Iterable<ResizeObserverEntry> entries, ResizeObserver observer)
-
-
RTCPeerConnectionErrorCallback
= dynamic Function(Exception error)
-
-
RTCSessionDescriptionCallback
= dynamic Function(RTCSessionDescriptionInit description)
-
-
SchedulerPostTaskCallback
= dynamic Function()
-
-
TransformerFlushCallback
= dynamic Function(TransformStreamDefaultController controller)
-
-
TransformerStartCallback
= dynamic Function(TransformStreamDefaultController controller)
-
-
TransformerTransformCallback
= dynamic Function(dynamic chunk, TransformStreamDefaultController controller)
-
-
UnderlyingSinkAbortCallback
= dynamic Function([dynamic reason])
-
-
UnderlyingSinkCloseCallback
= dynamic Function()
-
-
UnderlyingSinkStartCallback
= dynamic Function(WritableStreamDefaultController controller)
-
-
UnderlyingSinkWriteCallback
= dynamic Function(dynamic chunk, WritableStreamDefaultController controller)
-
-
UnderlyingSourceCancelCallback
= dynamic Function([dynamic reason])
-
-
UnderlyingSourcePullCallback
= dynamic Function(dynamic controller)
-
-
UnderlyingSourceStartCallback
= dynamic Function(dynamic controller)
-
-
ValidateAssertionCallback
= dynamic Function(String assertion, String origin)
-
-
VideoFrameOutputCallback
= dynamic Function(VideoFrame output)
-
-
VideoFrameRequestCallback
= dynamic Function(double now, VideoFrameMetadata metadata)
-
-
VoidFunction
= dynamic Function()
-
-
WebCodecsErrorCallback
= dynamic Function(Exception error)
-
-
XRFrameRequestCallback
= dynamic Function(double time, XRFrame frame)
-