Window: customElements 属性

基线 广泛可用

此功能已得到良好建立,可在许多设备和浏览器版本上运行。它自以下时间以来在浏览器中可用: 2020年1月.

customElementsWindow 接口的只读属性,它返回对 CustomElementRegistry 对象的引用,该对象可用于注册新的 自定义元素 并获取有关先前注册的自定义元素的信息。

示例

您将看到此属性最常见的用法示例是访问 CustomElementRegistry.define() 方法以定义和注册新的自定义元素,例如:

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

但是,它通常会缩短为如下所示:

js
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 标准
# dom-window-customelements

浏览器兼容性

BCD 表仅在启用了 JavaScript 的浏览器中加载。