customElementsWindow对象上的一个只读属性,接口返回一个CustomElementRegistry 对象的引用, 可以用于注册一个新的custom elements ,并且可以用于获取之前定义过的自定义元素的信息。

语法

let customElementRegistry = window.customElements;

返回值

一个表示当前窗口的自定义元素注册表的CustomElementRegistry对象的实例。

例子

这个属性最常用的例子是用来获取使用CustomElementRegistry.define()方法定义和注册的自定义元素,例如:

let customElementRegistry = window.customElements;
customElementRegistry.define('my-custom-element', MyCustomElement);

因此,它实际上是下列内容的简洁表示:

customElements.define('element-details',
  class extends HTMLElement {
    constructor() {
      super();
      const template = document
        .getElementById('element-details-template')
        .content;
      const shadowRoot = this.attachShadow({mode: 'open'})
        .appendChild(template.cloneNode(true));
  }
});

参阅我们的web-components-examples获取更多有用的例子。

规范

规范 状态 备注
HTML Living Standard
window.customElements
Living Standard Initial definition.

浏览器兼容

FeatureChromeEdgeFirefoxInternet ExplorerOperaSafari
Basic support54 No1

63

592

Yes — 593

No4110.1
FeatureAndroid webviewChrome for AndroidEdge mobileFirefox for AndroidOpera AndroidiOS SafariSamsung Internet
Basic support5454 No1

63

592

Yes — 593

4110.1 ?

1. Under consideration

2. From version 59: this feature is behind the dom.webcomponents.customelements.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.

3. Until version 59 (exclusive): this feature is behind the dom.webcomponents.enabled preference (needs to be set to true) and the dom.webcomponents.customelements.enabled preference (needs to be set to true). To change preferences in Firefox, visit about:config.

 

 

文档标签和贡献者

此页面的贡献者: shhider, bluetomlee, lltemplar, Mmzer
最后编辑者: shhider,