--- title: Document.registerElement() slug: Web/API/Document/registerElement tags: - DOM - Document.registerElement() - ELEMENTO DOM - Web Components - registerElement translation_of: Web/API/Document/registerElement original_slug: Web/API/Document/ElementoRegistrado ---
{{APIRef("DOM")}}
Note:document.registerElement() está depreciado em favor do customElements.define().
O método document.registerElement()
registra um novo elemento personalizado no browser e returna um construtor para o novo elemento.
Nota: Esta é uma tecnologia experimental. O browser você precisa usar suporte à componentes web. Veja Habilitando componentes web no Firefox.
var constructor = document.registerElement(tag-name, options);
Um projeto com propriedades protótipo como base para o elememento personalizado, e extends, uma existente tag para estender. Ambos são opcionais.
Aqui é um exemplo muito simples:
var Mytag = document.registerElement('my-tag');
Agora as novas tags são registradas no browser.
Uma variável Mytag tem um construtor que você pode usar para criar um elemento my-tag nos documentos como seguem:
document.body.appendChild(new Mytag());
Isto insere um elemento vazio my-tag que será visível se você usar o browser para desenvolvedores. Isto não será visível se você usar a ferramenta visão da capacidade do código fonte do browser. E isto não será visível no browser a menos que você adicione alguns conteúdos para a tag. Aqui está um caminho para adicionar conteúdo a nova tag:
var mytag = document.getElementsByTagName("my-tag")[0]; mytag.textContent = "I am a my-tag element.";
Especificação | Estado | Comentário |
---|---|---|
{{SpecName('Custom Elements')}} | {{Spec2('Custom Elements')}} |
definição inicial |
{{CompatibilityTable}}
Característica | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|
Suporte básico | 35 | 31[1] | {{CompatNo}} | 25 | {{CompatNo}} |
Feature | Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|
Suporte básico | 4.4.4 | 31[1] | {{CompatNo}} | 25 | {{CompatNo}} |
[1] Esta API é implementada uma preferência