FAQ-Antwort per Direktlink öffnen: Ein Abnahmeskript für Ankerziele
Ein interner Link wie /hilfe#rueckgabe-frist soll zur Antwort führen. Ist die Antwort eingeklappt, landet der Besucher auf einer Frage, deren Antwort verborgen ist. Der Link scheint dann kaputt, obwohl die Seite geladen wurde. Dieser Beitrag beschreibt ein Abnahmeskript für ein Verhalten, das Sie als Gestaltungsanforderung festlegen können. Ob und wie ein bestimmter Browser oder ein bestimmtes Bauteil das von selbst erledigt, wird hier nicht behauptet; das gehört in Ihre eigene Prüfung.
Die Anforderung
Wenn die Adresse ein Fragment enthält, das zu einer FAQ-Frage gehört, soll
- die zugehörige Antwort geöffnet sein,
- die Frage im sichtbaren Bereich liegen,
- der Fokus bei der Frage stehen, damit Tastatur- und Screenreader-Nutzer dort weitermachen,
- kein anderer Eintrag dadurch geschlossen werden, außer wenn Ihr Entwurf ausdrücklich nur eine offene Antwort erlaubt.
Vier Fälle, die sich nicht überlappen
Fall 1, Seite wird neu mit Fragment geladen. Der Zustand muss beim Laden hergestellt werden.
Fall 2, Seite ist bereits offen und ein Link ändert nur das Fragment. Hier lädt die Seite nicht neu, deshalb muss auf die Änderung des Fragments reagiert werden.
Fall 3, Fragment passt zu keiner Frage. Nichts wird geöffnet, nichts wird geschlossen, es erscheint keine Fehlermeldung.
Fall 4, Fragment zeigt auf eine Frage in einer geschachtelten Gruppe, zum Beispiel einer Kategorie, die ebenfalls eingeklappt ist. Zuerst die Gruppe, dann die Frage öffnen.
Ein fünfter Fall, JavaScript steht nicht zur Verfügung, braucht eine eigene Entscheidung: Entweder bleiben alle Antworten sichtbar, oder Sie akzeptieren, dass der Link nur zur Frage führt. Legen Sie das schriftlich fest, statt es offenzulassen.
Durchgespieltes Beispiel (frei erfunden)
Eine FAQ hat fünf Fragen in zwei Gruppen: Gruppe „Lieferung“ mit zwei Fragen, Gruppe „Rückgabe“ mit drei Fragen. Die Frage „Wie lange kann ich zurückschicken?“ trägt die Kennung rueckgabe-frist und ist die zweite Frage der Gruppe „Rückgabe“. Alles ist anfangs geschlossen.
Aufruf /hilfe#rueckgabe-frist soll ergeben: Gruppe „Rückgabe“ offen, Frage 2 offen, die übrigen vier Fragen geschlossen. Es sind also genau zwei Bereiche geöffnet, die Gruppe und die Frage. Wird danach auf der Seite ein Link zu #liefer-dauer angeklickt, soll Gruppe „Lieferung“ mit der betreffenden Frage geöffnet werden. Ob die Rückgabe-Frage offen bleibt, hängt von Ihrer Entscheidung zu Punkt 4 ab. Schreiben Sie sie vor dem Test auf, damit das Ergebnis nicht nach dem Test gedeutet wird.
Stoppbedingungen
Halten Sie die Umsetzung an und klären Sie nach, wenn zwei Einträge dieselbe Kennung haben, wenn sich eine Kennung beim Umformulieren der Frage ändert (alte Links brechen dann), oder wenn das Scrollen zum Ziel von einem fest haftenden Seitenkopf verdeckt wird. Der letzte Punkt verlangt einen Abstand oben, sonst ist die Frage zwar offen, aber nicht lesbar.
Abnahmeskript (vorgeschlagen, nicht durchgeführt)
Jeder Schritt wird von einer Person oder einem automatisierten Browsertest ausgeführt und mit Bestanden oder Nicht bestanden notiert.
- Neuer Tab, Adresse mit gültigem Fragment, Enter. Erwartung: Antwort offen, Frage sichtbar, Fokus auf der Frage.
- Gleiche Adresse nochmals in derselben Seite über einen internen Link. Erwartung: kein doppeltes Umschalten, die Antwort bleibt offen und wird nicht zugeklappt.
- Fragment einer anderen Frage anklicken. Erwartung wie in der vorab notierten Entscheidung.
- Ungültiges Fragment. Erwartung: kein Fehler, Zustand unverändert.
- Schachtelungsfall nach Fall 4.
- Zurück-Taste des Browsers. Erwartung: Der Zustand folgt dem Fragment oder bleibt nachvollziehbar; notieren Sie, was geschieht.
- Nur Tastatur: Fokusreihenfolge nach dem Öffnen prüfen.
- Ohne Skripte laden und den fünften Fall beobachten.
Das Skript soll nur Verhalten belegen, das Sie tatsächlich beobachtet haben. Notieren Sie Browser und Version zu jedem Ergebnis, damit nicht mehr behauptet wird, als geprüft wurde.