From 33058f2b292b3a581333bdfb21b8f671898c5060 Mon Sep 17 00:00:00 2001 From: Peter Bengtsson Date: Tue, 8 Dec 2020 14:40:17 -0500 Subject: initial commit --- .../web/api/document/registerelement/index.html | 66 ++++++++++++++++++++++ 1 file changed, 66 insertions(+) create mode 100644 files/zh-cn/web/api/document/registerelement/index.html (limited to 'files/zh-cn/web/api/document/registerelement') diff --git a/files/zh-cn/web/api/document/registerelement/index.html b/files/zh-cn/web/api/document/registerelement/index.html new file mode 100644 index 0000000000..33aca04807 --- /dev/null +++ b/files/zh-cn/web/api/document/registerelement/index.html @@ -0,0 +1,66 @@ +--- +title: Document.registerElement() +slug: Web/API/Document/registerElement +tags: + - API + - DOM + - Deprecated +translation_of: Web/API/Document/registerElement +--- +

{{APIRef("DOM")}}{{Deprecated_header}}

+ +
+

警告:不建议使用document.registerElement(),请使用{{DOMxRef("CustomElementRegistry.define()","customElements.define()")}}。

+
+ +

{{draft}}

+ +

Document.registerElement() 在浏览器注册一个新的 自定义元素 ,返回一个该元素的构造函数。

+ +
+

注意这是一项正在试验的技术。你可以在支持Web Components的浏览器中使用。参考 在火狐浏览器启用Web Components 。

+
+ +

语法

+ +
var constructor = document.registerElement(tag-name, options);
+ +

参数

+ +
+
tag-name
+
自定义标签的名字。 必须含有一个连字符(-),例如 my-tag。
+
options {{optional_inline}}
+
这个参数是一个用于添加描述自定义元素原型属性和扩展的对象,以扩展现有标签。这个参数是可选的。
+
+ +

示例

+ +

这里有几个简单的例子:

+ +
var Mytag = document.registerElement('my-tag');
+
+ +

我们把新标签注册到浏览器。 Mytag 变量拥有一个构造函数,你可以像如下所示一样使用它创造一个新的my-tag元素

+ +
document.body.appendChild(new Mytag());
+ +

这样我们就插入了一个空的my-tag元素,你可以通过浏览器提供的开发者工具来找到它。如果你使用浏览器来查看源代码它是不可见的。由于现在元素并没有内容,所以我们在页面中是看不到它的。我们可以给它添加一些内容,以便在页面中看到。 下面是一种往新标签里面添加内容的方式。

+ +
var mytag = document.getElementsByTagName("my-tag")[0];
+mytag.textContent = "I am a my-tag element.";
+
+ +

浏览器兼容性

+ + + +

{{Compat("api.Document.registerElement")}}

+ +

另请参阅

+ + -- cgit v1.2.3-54-g00ecf