Gå til indhold
SilktideHjælp

Fokusfælde i modal dialog

Silktide identificerer sider, der indeholder en modal dialog – en pop op-dialog, som blokerer interaktion med resten af siden – og beder dig bekræfte, at tastaturfokus håndteres korrekt, mens dialogen er åben. Dette er en manuel gennemgang: automatisk test kan finde dialogen, men ikke observere, hvordan den opfører sig, når den åbnes og lukkes.

Hvorfor det er vigtigt

Mens en modal dialog er åben, er siden bag den synlig, men inaktiv. Hvis kan slippe ud af dialogen, ender tastatur- og -brugere med at tabulere gennem indhold, de ikke kan se eller bruge, læse siden nedenunder ude af kontekst og helt miste deres placering. Og hvis fokus ikke returneres, når dialogen lukkes, ender de øverst på siden og må navigere tilbage til det sted, de var.

Sådan løser du det

Åbn hver dialog på siden, og verificér kun med et tastatur:

  1. Når dialogen åbnes, flyttes fokus ind i den – typisk til det første kontrolelement eller selve dialogen.
  2. Når du trykker på Tab og Shift+Tab, går fokus gennem dialogens kontrolelementer uden nogensinde at nå siden bag den.
  3. Når du trykker på Escape, lukkes dialogen (for dialoger, der kan lukkes).
  4. Når dialogen lukkes, returnerer fokus til det element, der åbnede den.

Hvis noget af dette ikke virker, skal du rette din implementering af dialogen. Det oprindelige <dialog>-element, der åbnes med showModal(), giver det meste af denne funktionalitet automatisk; brugerdefinerede dialoger skal have det programmeret. Hvis alt fungerer korrekt, fundet.

Sådan tester Silktide dette

  1. Se efter tegn på, at en side indeholder en modal dialog: et oprindeligt <dialog>- element, et element med role="dialog" eller role="alertdialog", et element med aria-modal="true" eller et element med et almindeligt klassenavn i modal-stil, der også indeholder fokuserbare kontrolelementer.
  2. Når et af disse findes, opret ét prompt til gennemgang for siden.

Silktide kan ikke åbne dialogen og observere dens fokusadfærd under kørsel, så dette tjek fejler aldrig automatisk – det beder dig om at verificere.

Fejlfinding

Siden har ingen synlig modal dialog

Mange websteder leverer dialogmarkup på hver side (et nyhedsbrevs-pop op-vindue, en cookie- dialog, et skjult søgeoverlejring), som kun vises under bestemte betingelser. Promptet gælder stadig: verificér dialogens adfærd i den tilstand, hvor den åbnes. Hvis markupen er en rest, der aldrig kan åbnes, kan du overveje at fjerne den.

Vores dialoger kommer fra et tredjepartsbibliotek

Velkendte dialogbiblioteker håndterer normalt fokus korrekt, men konfiguration og brugerdefineret indhold kan ødelægge det. Verificér adfærden på jeres egne sider i stedet for at stole på bibliotekets dokumentation.

Få mere at vide

Sidst opdateret

Var denne side nyttig?

Fokusfælde i modal dialog | Silktide Hjælp