WCAG 2.5.2 Zrušení akce ukazatele
Aktualizováno 14. října 2026 · Čtení na 3 min
- Úroveň
- A · WCAG 2.1
- EN 301 549
- 9.2.5.2
- Co checker testuje
- Ruční kontrola: automatický nástroj toto kritérium spolehlivě neověří.
- Oficiální text
- Understanding 2.5.2 Pointer Cancellation (W3C, v angličtině)
Kritérium úspěšnosti 2.5.2 usnadňuje nápravu nechtěných klepnutí a kliknutí. Lidé s třesem, omezenou zručností nebo slabozrakostí a každý, kdo klepe na malou obrazovku telefonu, často stisknou něco jiného, než chtěli. Pokud akce počká, až se prst nebo tlačítko uvolní, mohou prst odsunout a akci zrušit. Jde o úroveň A a je součástí normy EN 301 549 (článek 9.2.5.2). Na harmonizovanou normu EN 301 549 odkazuje i český zákon č. 424/2023 Sb.
Co kritérium vyžaduje
U funkcí, které lze ovládat jedním ukazatelem, platí alespoň jedno z následujícího:
- Bez události stisku: událost stisku (down) se k provedení žádné části funkce nepoužívá;
- Přerušení nebo vrácení: funkce se dokončí při události uvolnění (up) a existuje způsob, jak ji před dokončením přerušit nebo ji potom vrátit;
- Vrácení uvolněním: událost uvolnění vrátí jakýkoli výsledek předchozí události stisku (například podržením zobrazit náhled, uvolněním ho zavřít);
- Nezbytnost: dokončení funkce při události stisku je nezbytné.
W3C uvádí, že funkce napodobující stisk klávesy na klávesnici nebo numerické klávesnici se považují za nezbytné a že kritérium platí pro akce ukazatele, které interpretuje webový obsah, ne prohlížeč nebo asistivní technologie.
Typické chyby v e-shopu
- tlačítko „Přidat do košíku“ nebo „Koupit hned“, které se spouští při
mousedown,pointerdownnebotouchstart; - prvek „Odebrat položku“ v košíku, který maže při stisku bez možnosti vrácení;
- dlaždice produktu, která přejde jinam, jakmile se jí prst dotkne, i když se uživatel snažil posouvat stránku;
- menu, které se otevře při stisku a vybere položku ještě před uvolněním, takže uklouznutí vybere špatnou možnost.
Jak to zkontrolovat
Automaticky: pro toto kritérium neexistuje pravidlo axe-core. Axe nezkoumá, kterým událostem ukazatele skript naslouchá, proto je potřeba ruční kontrola.
Ručně: myší stiskněte a podržte tlačítko na každém důležitém prvku — „Přidat do košíku“, „Odebrat“, „Zaplatit“, položky menu — potom ukazatel z prvku odsuňte a tlačítko uvolněte. Nemělo by se nic stát. Totéž udělejte na dotykové obrazovce: dotkněte se, odsuňte prst, zvedněte ho. Pokud se akce stane při stisku, ověřte, že ji lze snadno vrátit.
Jak to opravit
- Používejte standardní událost
click(nebo nativní<button>a<a>), která se spouští při uvolnění. - Vyhněte se
mousedown,pointerdownatouchstartpro akce; používejte je jen pro věci jako vizuální odezvu. - U destruktivních akcí nabídněte vrácení („Položka odebrána. Vrátit“) nebo potvrzení.
- Zkontrolujte widgety třetích stran a skripty šablony — vlastní karusely a menu někdy reagují už při stisku.
Související kritéria
- 2.5.1 Gesta ukazatele — složitá gesta potřebují alternativu jedním ukazatelem.
- 2.5.8 Velikost cíle (minimum) — větší cíle snižují počet nechtěných klepnutí.
- 2.5.7 Přetahování — přetahování potřebuje alternativu jedním ukazatelem.
Časté otázky
Co vyžaduje WCAG 2.5.2 Zrušení akce ukazatele?
U akcí prováděných jedním ukazatelem musí platit alespoň jedno: při události stisku (down) se nic nespustí; akce se dokončí při události uvolnění (up) a lze ji přerušit nebo vrátit; uvolnění vrátí výsledek stisku; nebo je dokončení při stisku nezbytné.
Stačí použít událost click?
Obvykle ano. Standardní událost click se spouští při uvolnění a uživatelé mohou akci zrušit tím, že ukazatel před uvolněním z prvku odsunou. Problémy vznikají u obsluhy událostí mousedown, pointerdown nebo touchstart.
Existují z 2.5.2 výjimky?
Ano, když je akce při stisku nezbytná. W3C uvádí, že funkce napodobující stisk klávesy na klávesnici nebo numerické klávesnici, například klávesnice na obrazovce, se považují za nezbytné.