Solo JavaScript suficiente
Donde Feitio usa scripts, lo que el navegador hace por sí solo y las reglas para no excederse.
En esta página
El principio
Feitio usa JavaScript donde mejora la pantalla y no tiene que funcionar sin él. Lo que se mantiene fuera es el exceso: una gran librería para un pequeño efecto, un script en cada página por hábito, toda la pantalla construida en el navegador cuando el servidor la entregaría lista.
El navegador primero
Antes de escribir un script, comprueba si el navegador ya lo hace. Lo que hace por sí mismo es accesible: teclado, lector de pantalla y foco.
| Componente | El navegador hace | el script añade |
|---|---|---|
| Caja lateral | la del navegador popover: abre, cierra con Esc y un clic fuera | nada |
| Diálogo | el del navegador <dialog>, con showModal() | una línea para abrir |
| Detalles | el del navegador <details> | la animación de apertura y cierre |
| AppShell | — | el encabezado que se oculta al hacer scroll, en móvil |
| ScrollFade, BackToTop | — | muestra cuando se aplican; desplazamiento suave hacia arriba |
| StatusOverlay | — | los estados de carga, completado y error |
| CodeBlock | — | copiar y colores del código |
Reglas
- No hay API de navegador mientras el componente se está construyendo. La página llega lista desde el servidor; el script entra después y solo añade.
- La reducción de movimiento aplica también a los scripts: no hay animación hecha a mano cuando el sistema pide menos movimiento.
- Los scripts nunca quitan el teclado ni al lector de pantalla. Si lo hizo el elemento del navegador, sigue haciéndolo.
- Preciso y cercano al usuario: el script de un componente se envía con él, no en un bundle para todo el sitio.