2️⃣ 2.5.1 - Zeigergesten
A 2.1
Umsetzung
Ziel
Sicherstellen, dass alle Funktionen mit einem einzelnen Zeiger ohne Mehrpunkt- oder pfadbasierte Gesten bedienbar sind, außer wenn solche Gesten unabdingbar sind.
Beschreibung
- Funktionen, die Mehrpunkt- oder pfadbasierte Gesten erfordern, müssen alternativ durch Einzelpunktaktionen bedienbar sein.
- Pfadbasierte Gesten umfassen Interaktionen, bei denen die Bewegung zwischen Start- und Endpunkt entscheidend ist.
- Mehrpunktgesten wie Pinch-Zoom oder Wischen mit zwei Fingern sind nicht barrierefrei ohne Einzelpunktalternativen.
- Ausnahmen gelten, wenn pfad- oder mehrpunktbasierte Gesten wesentlicher Bestandteil einer Funktion sind.
Anforderungen
- Sicherstellen, dass Steuerelemente einfach und intuitiv durch Einzelpunktaktionen bedienbar sind.
- Vermeidung von Gesten, die komplexe Bewegungsmuster erfordern, wenn diese nicht unabdingbar sind.
- Verwendung von HTML-Elementen und JavaScript-Events, um Einzelpunktbedienungen zu unterstützen (
onclick,ontap). - Bereitstellung zusätzlicher Steuerelemente wie Vor-/Zurück-Pfeile oder Zoom-Schaltflächen.
- Sicherstellen, dass Touchscreen-Interaktionen und Mausbedienungen gleichermaßen unterstützt werden.
- Alternativen zu pfad- oder mehrpunktbasierten Gesten bereitstellen, z. B. Schaltflächen für Funktionen wie Zoom oder Navigation.
- Konsistenz bei der Beschriftung und Benennung von Steuerelementen wahren.
- Testen von Steuerelementen auf einfache Bedienbarkeit mit Touchscreen und Maus.
- Sicherstellen, dass alternative Methoden für alle Funktionen bereitgestellt werden.
- Überprüfung der Zugänglichkeit mit assistierenden Technologien wie Kopfzeigern oder sprachgesteuerten Geräten.
Code-Beispiele
Einzelpunktbedienung für einen Schieberegler
<div class="slider"> <button onclick="decreaseValue()">-</button> <input type="range" id="slider" min="1" max="100" /> <button onclick="increaseValue()">+</button></div><script> function decreaseValue() { const slider = document.getElementById('slider'); slider.value = Math.max(parseInt(slider.value) - 1, slider.min); } function increaseValue() { const slider = document.getElementById('slider'); slider.value = Math.min(parseInt(slider.value) + 1, slider.max); }</script>