擴充套件原生元素

可以擴充套件本機元素,但它們的後代不具有自己的標記名稱。相反,is 屬性用於指定元素應該使用的子類。例如,這是 <img> 元素的擴充套件,它在載入時將訊息記錄到控制檯。

const prototype = Object.create(HTMLImageElement.prototype);
prototype.createdCallback = function() {
  this.addEventListener('load', event => {
      console.log("Image loaded successfully.");
  });
};

document.registerElement('ex-image', { extends: 'img', prototype: prototype });
<img is="ex-image" src="http://cdn.sstatic.net/Sites/stackoverflow/img/apple-touch-icon.png" />