Acionamento por ponteiro único
O que a norma pede
Funções acionadas por clique ou toque não disparam no momento de pressionar, mas ao soltar, com possibilidade de cancelar ou desfazer, salvo quando disparar ao pressionar for essencial.
Formas de atender
Basta uma delas. A primeira é a preferida; as demais são alternativas para exceções.
- Uma forma de atender: nenhuma função dispara ao pressionar o ponteiro (down-event).
- Ou: a função só se completa ao soltar (up-event), e há como interromper antes ou desfazer depois.
- Ou: soltar o ponteiro desfaz o que o pressionamento iniciou.
- Ou: disparar ao pressionar é essencial, como num teclado de piano virtual.
- 2.5.2 (A)
Parecido na NBR 17060
A NBR 17060 trata de aplicativos. Se o seu serviço também tem app, veja o que a Bússola da NBR 17060 diz sobre o mesmo assunto:
Visões por perfil
Escolha um perfil para ver o que o requisito pede de quem ocupa esse papel:
Especifique que as ações disparam ao soltar o dedo ou o botão do mouse, e não ao pressionar. Para ações rápidas, como arquivar, preveja a opção de desfazer.
Botão “Excluir”
O botão fica ao lado de “Editar”.
Errado: Dispara ao pressionar
Na especificação
“Excluir no toque (touchstart).”
Um toque errado exclui sem chance de desistir.
Certo: Dispara ao soltar, com desfazer
Na especificação
“Excluir ao soltar; mostrar ‘Item excluído. Desfazer’.”
Dá para evitar e reverter erros.
Acione funções com o evento click, que dispara ao soltar e pode ser cancelado ao arrastar para fora, em vez dos eventos que disparam ao pressionar, como pointerdown. Em ações destrutivas, ofereça desfazer ou confirmação.
Botão de excluir
Implementação do acionamento.
Errado: Ao pressionar
botao.addEventListener("pointerdown", excluir);Não há como desistir.
Certo: Ao soltar
botao.addEventListener("click", excluir);Afastar o dedo antes de soltar cancela.
Inclua no padrão de componentes que as ações disparem ao soltar e exija desfazer em ações destrutivas rápidas. Ações que disparam no primeiro toque geram exclusões e compras acidentais.
Exclusões acidentais
O suporte recebe pedidos de restaurar documentos excluídos.
Errado: Restauração manual
Decisão
Suporte restaura caso a caso.
Custo contínuo e frustração.
Certo: Correção na interface
Decisão
Exclusão ao soltar, com opção de desfazer por 10 segundos.
Os pedidos caem.
Pressione cada controle e, sem soltar, arraste para fora antes de soltar, com mouse e com toque. A ação não pode acontecer.
Botão de arquivar
Teste de pressionar e arrastar para fora.
Errado: Dispara ao pressionar
Pressiona → item já arquivado
Arrasta para fora e solta → sem efeito, já arquivou
Não há como desistir.
Certo: Pode desistir
Pressiona → nada ainda
Arrasta para fora e solta → nada acontece
O erro é evitável.
Escreva mensagens de confirmação curtas, no passado, com a opção de desfazer bem clara, como “Item arquivado. Desfazer”.
Mensagem após arquivar
Aviso exibido depois da ação.
Errado: Sem saída
Mensagem
“Operação realizada com sucesso.”
Não diz o que aconteceu nem como reverter.
Certo: Com desfazer
Mensagem
“Documento arquivado. [Desfazer]”
A pessoa corrige o engano na hora.