Aller au contenu
Aubui · Actions data-aub
Comportements

Actions data-aubNouveau

Afficher, masquer, copier, fermer, confirmer : les gestes de tous les jours se déclarent dans le HTML. Aucun JavaScript métier à écrire, une seule délégation globale.

Essayer

Astuce : ce bandeau se ferme avec le bouton à droite.
HTML
<button type="button" data-aub-action="toggle" data-aub-target="#filtres"
        aria-expanded="false" aria-controls="filtres">Filtres</button>
<div id="filtres" hidden>…</div>

<input id="lien" value="https://…" readonly>
<button type="button" data-aub-action="copy" data-aub-copy-from="#lien">Copier</button>

<div class="aub-alert aub-alert--info" data-aub-dismissible>
  Astuce… <button type="button" data-aub-action="dismiss" aria-label="Fermer">×</button>
</div>

Installer

Inclus dans aubui.js (complet et léger) et dans aubui.light.js. Seul :

HTML
<script src="https://ui.aubota.xyz/js/actions.js" defer></script>

Chargé seul, actions.js va chercher dialog.js à côté de lui (même dossier, même ?v=) pour que data-aub-confirm ouvre toujours une lightbox.

Référence

AttributComplémentEffet
data-aub-action="toggle"data-aub-target="#id"Bascule hidden sur la cible et met à jour aria-expanded du bouton.
data-aub-action="show"data-aub-targetRetire hidden.
data-aub-action="hide"data-aub-targetPose hidden.
data-aub-action="copy"data-aub-copy="texte" ou data-aub-copy-from="#champ"Copie dans le presse-papiers (valeur d’un champ ou texte d’un élément). Le bouton affiche « Copié » 1,2 s.
data-aub-action="dismiss"ancêtre [data-aub-dismissible]Masque le conteneur le plus proche.
data-aub-confirm="…"-title, -ok, data-aub-dangerLightbox avant clic/envoi : voir Dialogues.
data-aub-theme-toggle · data-accent-set—Laissés à theme.js / accent.js : voir Thème & accent.
  • La cible est un sélecteur CSS (querySelector) : un sélecteur invalide est ignoré sans erreur.
  • La délégation est posée sur document : les éléments injectés plus tard fonctionnent sans rien rappeler.
  • La copie utilise navigator.clipboard (HTTPS) ; si l’API refuse, un repli execCommand('copy') est tenté.
Accessibilité
  • Utilise un vrai <button type="button"> : clavier et lecteurs d’écran gratuits.
  • Pour toggle, pose aria-expanded="false" et aria-controls au départ : Aubui le tient ensuite à jour.
  • Un bouton « × » a toujours un aria-label (« Fermer l’astuce »).
  • Le retour « Copié » remplace le texte du bouton, donc il est lu par les lecteurs d’écran qui suivent le focus.
Aubui · design system AUBOTA · version 2026-10-19-3 · API figée · README · Une nouveauté Aubui = une section ici.