document.registerElement()有哪些优点?

far*_*ncz 8 html javascript html5 dom

直接在HTML文档中使用自定义标记而不使用document.registerElement('my-tag') 似乎工作正常.它可以照常设置等.

Cod*_*gue 6

registerElement有两个优点:

  1. 它返回该标记的构造函数,这意味着您可以通过Javascript实例化它,例如:
    var myTag = document.registerElement("my-tag"); document.body.appendChild(new myTag())
  2. 它提供了第二个参数,允许您为元素选择原型,例如
    var customImg = document.registerElement("custom-img", { prototype: Object.create(HTMLImageElement.prototype) });

第二个实际上是一个通用选项对象,可以扩展其他原型或扩展现有标签(如<img is="custom-img">)