Keyboard - Übersicht
JavaScript Key Codes
Brief note on buttons, enter, and space
Usergruppen
Section titled “Usergruppen”Drei Gruppen von Usern benutzen das Keyboard:
- Normale User
- Screenreader User
- Power User
Normale User
Section titled “Normale User”Der Durchschnittsuser benutzt hauptsächlich die Maus und zusätzlich maximal folgende Tasten:
- Tab
- Arrow Keys
- Enter
- Space
- Escape
- Backspace
Screenreader User
Section titled “Screenreader User”Bevor Screenreader-Accessibility eingebaut wird, sollten die Keys für die normalen User abgedeckt werden. Screenreader bauen darauf auf.
Power User
Section titled “Power User”Poweruser vewenden das Keyboard mit Shortcuts, um schneller und effizienter arbeiten zu können als mit der Maus.
Tab Shift+Tab
event.typekeydown,keyup, fokussiert das nächste fokussierbare Element beikeydownevent.keyTabevent.codeTab- legacy code:
event.keyCode9
Die Tabtaste ist die wichtigste Taste, weil man damit durch fokussierbare Elemente tabben kann. Das sind unter anderem:
- Links
- Buttons
- Formularfelder
(Safari erlaubt das übrigens nicht automatisch, man muss das unter Settings > Advanced > Accessibility > Press tab to highlight each item on a webpage aktivieren.)
Wenn wir auf ein Element tabben, bekommt es einen Fokus. Die Standardmarkierung für den Fokus ist ein blauer Rahmen um das Element.
Arrow Keys
Section titled “Arrow Keys”🔼 ▶️ 🔽 ◀️
event.typekeydown,keyup, scrollen beikeydownevent.keyArrowUp, ArrowDown, ArrowRight, ArrowLeftevent.codeArrowUp, ArrowDown, ArrowRight, ArrowLeft- legacy code:
event.keyCodeleft: 37 up: 38 right: 39 down: 40
Space Shift+Space
event.typekeydown,keypress,keyupevent.key–event.codeSpace- legacy code:
event.keyCode32 / 16 + 32
Enter
Enter kann mit einigen Elementen interagieren, gewöhnlich wird es benutzt, um Dinge zu bestätigen oder ein Formular abzuschicken.
event.typekeydown,keypress,keyupevent.keyEnterevent.codeEnter- legacy code:
event.keyCode13
Escape
Section titled “Escape”Esc
Mit Escape können wir eine Anwendung verlassen (z.B. wenn wir eine Suche starten, kommen wir mit Escape raus).
event.typekeydown,keyupevent.keyEscapeevent.codeEscape- legacy code:
event.keyCode27
Backspace
Section titled “Backspace”Mit Backspace können wir Dinge löschen, z.B. Text in einem Text- oder Textarea-Formularfeld.
event.typekeydown,keyupevent.keyBackspaceevent.codeBackspace- legacy code:
event.keyCode8
Klick-Event triggern
Section titled “Klick-Event triggern”mit Space
Section titled “mit Space”Bei einem fokussierten Button triggert die Space-Taste ein click Event bei keyup.
Bei einem fokussierten Link triggert die Space-Taste keinen click Event.
mit Enter
Section titled “mit Enter”Bei einem fokussierten Button triggert die Enter-Taste ein click Event bei keyup.
Bei einem fokussierten Link triggert die Enter-Taste ein click Event, das heißt, sie kann dazu benutzt werden, um zum href des Links zu navigieren.
Anwendungen
Section titled “Anwendungen”Browsen
Section titled “Browsen”Mit den Pfeiltasten können wir auf einer Website browsen: Pfeil runter bewegt den Scrollbar nach unten, Pfeil rauf nach oben, das gleiche gilt für horizontale Scrollbars und Pfeil rechts/links.
Mit Bild runter scrollen wir eine ganze Seite nach unten, mit Bild rauf eine ganze Seite nach oben (opt und Pfeil rauf/runter auf Mac).
Mit ende scrollen wir ans Ende einer Website, mit pos1 wieder rauf zum Anfang (cmd und Pfeil rauf/runter auf Mac).
Mit Space bzw. Shift + Space scrollen wir auf einer Website eine Seite rauf bzw. runter.
Mit alt und ◀️ bzw. ▶️ können wir im Browser eine Seite (ein Tab) zurück und wieder nach vorne gehen.
Formulare
Section titled “Formulare”Mit den Pfeiltasten können wir in Formularen einen Radio-Button auswählen und eine Option in einem Select-Menü.
Mit Space können wir
- eine Checkbox auswählen
- ein Select-Menü öffnen
- eine Option im Select-Menü wählen und
- eine Option im Radio-Button-Menü wählen
Mit Enter können wir ein Formular abschicken, wenn
- der Fokus innerhalb eines Formulars ist
- das Formular einen Submit-Button hat
- der Fokus nicht in der Textarea ist
- der Fokus nicht in einem offenen Select-Menü ist
Wenn der Fokus innerhalb einer <textarea> ist, macht Enter einen Zeilenumbruch.
Wenn wir innerhalb eines Select-Menüs sind, können wir mit Enter eine Option auswählen (aber nicht das Select-Menü öffnen).