0Pricing
HTML Academy · Aula

Invocadores de interesse e atributo Command

Explore os atributos command e commandfor para ações declarativas.

Invocadores de interesse e atributo Command é uma aula grátis de HTML Academy no CoddyKit. Esta é a aula 4 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de HTML Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de HTML Academy inclui 4 aulas no total.

Dois Padrões Declarativos Emergentes

O grupo Open UI está padronizando dois novos atributos HTML — command para ações acionadas por clique e interesttarget para o "interesse" acionado ao passar o mouse ou receber foco (a base de dicas de ferramentas e prévias). Ambos ampliam o HTML com comportamentos declarativos que tradicionalmente exigiam JavaScript.

O Atributo de Comando

Um botão com command="show-modal" e commandfor="dialog-id" exibe um diálogo sem nenhum JS — substituindo chamadas manuais a dialog.showModal(). Outros comandos: command="close", command="toggle-popover", command="show-popover".

<button command="show-modal" commandfor="my-dialog">Open</button>
<dialog id="my-dialog">...</dialog>

Comandos Compatíveis

O conjunto inicial é voltado a padrões comuns de interface do usuário: exibir e ocultar diálogos (com o elemento integrado <dialog>), alternar janelas sobrepostas (a API de janelas sobrepostas) e possivelmente crescerá com o tempo. Elementos personalizados podem declarar quais comandos aceitam por meio de manipuladores de eventos oncommand.

Comandos Personalizados

Além dos comandos integrados, a especificação permite sequências de comandos personalizadas iniciadas por "--". O elemento-alvo recebe um evento command que você pode tratar em JS: el.addEventListener("command", (e) => { if (e.command === "--save") save(); }).

Acionadores de Interesse

O atributo interesttarget marca o alvo de "interesse" de um elemento — normalmente, uma dica de ferramenta que aparece quando o usuário passa o mouse ou posiciona o foco. O navegador gerencia automaticamente o tempo (um atraso de 300 ms para detectar a intenção de passar o mouse), o posicionamento (com posicionamento por âncora) e o encerramento.

<button interesttarget="user-info">Profile</button>
<div id="user-info" popover="hint">Ada Lovelace — Admin</div>

Combinado com o Modo de Dica

O modo de janela sobreposta de dica foi criado para janelas sobrepostas no estilo de dicas de ferramentas que aparecem quando há interesse. Elas não são modais, não roubam o foco e são fechadas quando o interesse desaparece. A combinação do alvo de interesse com o modo de dica fornece uma dica de ferramenta nativa usando apenas dois atributos HTML.

Vantagens para a Acessibilidade

Os diálogos nativos mantêm o foco dentro deles; as janelas sobrepostas nativas gerenciam o empilhamento; e os acionadores nativos de interesse gerenciam o tempo de intenção de passar o mouse e anunciam as relações aos leitores de tela. Substituir implementações personalizadas em JS por essas primitivas declarativas melhora de forma confiável a qualidade da acessibilidade.

Status da Especificação

Esses recursos ainda estão sendo padronizados. Os nomes exatos dos atributos e o conjunto de comandos podem mudar. As implementações nos navegadores estão surgindo primeiro no Chromium. O uso em produção deve aguardar até que a nomenclatura se estabilize e pelo menos dois navegadores ofereçam suporte — provavelmente no próximo ano ou nos dois seguintes.

Substituindo Padrões de JS

Cada um desses recursos substitui JavaScript que foi escrito e reescrito milhões de vezes: gerenciamento de diálogos, acionadores de janelas sobrepostas e comportamento de dicas de ferramentas. Transferir esses padrões para o HTML reduz o peso da página, melhora a consistência e permite que o navegador aplique otimizações.

Open UI como Fonte

O grupo comunitário Open UI (open-ui.org) conduz grande parte desse trabalho — propondo, criando protótipos e conduzindo novos elementos e atributos HTML pelo processo de padronização. Acompanhe o blog deles para conhecer as propostas mais recentes.

Relação com Outros Recursos Modernos

Comandos, alvos de interesse, janelas sobrepostas, diálogos, posicionamento por âncoras, transições de visualização e listas de seleção personalizáveis fazem parte de um único esforço coerente para trazer padrões de bibliotecas de componentes para a plataforma. Cada recurso é pequeno por si só; juntos, representam a maior expansão do vocabulário de interface do usuário do HTML em anos.

O que Fazer Agora

Acompanhe as propostas (open-ui.org), faça experimentos no Chromium com os sinalizadores ativados e planeje adotar os recursos à medida que se estabilizarem. Audite sua base de código existente: conte quanto JS é dedicado à infraestrutura de diálogos, janelas sobrepostas e dicas de ferramentas. Esse código deve ser substituído nas próximas versões.

Verificação de Conhecimento

Qual é a finalidade do atributo de comando em um botão?

Resumo

Duas funcionalidades emergentes ampliam o vocabulário declarativo de interface do usuário do HTML: comando + destino do comando para ações acionadas por clique (exibir um modal e alternar uma janela sobreposta) e alvo de interesse + modo de dica para dicas de ferramentas acionadas ao passar o mouse ou receber foco. Ambos substituem padrões comuns de JavaScript por atributos HTML, melhorando a acessibilidade e reduzindo o tamanho do pacote. Ainda estão evoluindo; acompanhe o Open UI para saber quando se estabilizarem e publique-os conforme o suporte dos navegadores chegar.

Perguntas Frequentes

A aula “Invocadores de interesse e atributo Command” é grátis?

Sim — o texto completo de “Invocadores de interesse e atributo Command” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de HTML Academy, atualize para CoddyKit PRO. O curso de HTML Academy inclui 4 aulas no total.

O que vou aprender em “Invocadores de interesse e atributo Command”?

Explore os atributos command e commandfor para ações declarativas. Você pratica HTML Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.

Preciso ter experiência prévia para começar HTML Academy?

Nenhuma experiência prévia é necessária. HTML Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 4 de 4.

Quanto tempo leva a aula “Invocadores de interesse e atributo Command”?

A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.

Posso escrever e executar código nesta aula de HTML Academy?

Sim. Cada aula de HTML Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.

Todas as aulas deste curso

  1. DOM de sombra declarativo
  2. A API Popover
  3. O elemento selectlist
  4. Invocadores de interesse e atributo Command
← Voltar para HTML Academy