The CustomElementRegistry
interface provides methods for registering custom elements and querying registered elements. To get an instance of it, use the window.customElements
property.
On this page
CustomElementRegistry
Instance methods
-
CustomElementRegistry.define()
-
Defines a new custom element.
-
CustomElementRegistry.get()
-
Returns the constructor for the named custom element, or
undefined
if the custom element is not defined. -
CustomElementRegistry.getName()
-
Returns the name for the already-defined custom element, or
null
if the custom element is not defined. -
CustomElementRegistry.upgrade()
-
Upgrades a custom element directly, even before it is connected to its shadow root.
-
CustomElementRegistry.whenDefined()
-
Returns an empty
Promise
that resolves when a custom element becomes defined with the given name. If such a custom element is already defined, the returned promise is immediately fulfilled.
Examples
See the Examples section in our guide to using custom elements.
Specifications
Specification |
---|
HTML Standard # custom-elements-api |
Browser compatibility
Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | WebView Android | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | |
CustomElementRegistry |
54 | 79 | 63 | No | 41 | 10.1 | 54 | 54 | 63 | 41 | 10.3 | 6.0 |
builtin_element_support |
67 | 79 | 63 | No | 54 | No | 67 | 67 | 63 | 48 | No | 9.0 |
define |
54 | 79 | 63 | No | 41 | 10.1 | 54 | 54 | 63 | 41 | 10.3 | 6.0 |
get |
54 | 79 | 63 | No | 41 | 10.1 | 54 | 54 | 63 | 41 | 10.3 | 6.0 |
getName |
117 | 117 | 116 | No | 103 |
previewSupports 'Autonomous custom elements' but not 'Customized built-in elements'. |
117 | 117 | 116 | No |
NoSupports 'Autonomous custom elements' but not 'Customized built-in elements'. |
No |
upgrade |
68 | 79 | 63 | No | 55 | 12.1 | 68 | 68 | 63 | 48 | 12.2 | 10.0 |
whenDefined |
54 | 79 | 63 | No | 41 | 10.1 | 54 | 54 | 63 | 41 | 10.3 | 6.0 |
© 2005–2023 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/CustomElementRegistry