JavaScript na medida
Onde o Feitio usa script, o que o navegador já faz sozinho, e as regras para não exagerar.
Nesta página
O princípio
O Feitio usa JavaScript onde ele deixa a tela melhor, e não precisa funcionar sem ele. O que não entra é o excesso: biblioteca grande para um efeito pequeno, script em toda página por costume, a tela inteira montada no navegador quando o servidor já entregaria pronta.
O navegador primeiro
Antes de escrever um script, veja se o navegador já resolve. O que ele faz sozinho já chega acessível: teclado, leitor de tela e foco.
| Componente | O navegador faz | O script acrescenta |
|---|---|---|
| Drawer | o popover do navegador: abre, fecha com Esc e com toque fora | nenhum |
| Dialog | o <dialog> do navegador, com showModal() | uma linha para abrir |
| Details | o <details> do navegador | a animação de abrir e fechar |
| AppShell | — | o cabeçalho que some ao rolar, no mobile |
| ScrollFade, BackToTop | — | mostrar quando valem; rolar suave até o topo |
| StatusOverlay | — | os estados carregando, certo e erro |
| CodeBlock | — | copiar e as cores do código |
Regras
- Nenhuma API de navegador na hora de montar o componente. A página vem pronta do servidor; o script entra depois e só acrescenta.
- O movimento reduzido vale para o script também: nada de animação feita à mão quando o sistema pede menos movimento.
- O script nunca tira o teclado nem o leitor de tela. Se o elemento do navegador fazia, continua fazendo.
- Pequeno e perto de quem usa: o script de um componente vai junto dele, não num pacote para o site inteiro.