Fallo común WCAG 2.2
F54Funciones que solo se activan con el ratón o con gestos táctiles
Nombre oficial en el W3C: Fallo del criterio de conformidad 2.1.1 debido a usar únicamente manejadores de eventos específicos de dispositivos apuntadores (incluidos los gestos) para una función
En pocas palabras
Este fallo ocurre cuando una función solo responde al ratón o a la pantalla táctil, por ejemplo a mousedown o a deslizar el dedo. Quien usa el teclado no puede activarla. Toda función debe poder usarse con teclado, salvo las que dependen del trazo, como dibujar a mano alzada.
Por qué es importante
Las personas ciegas no usan ratón, porque no ven el puntero. Muchas personas con poca movilidad en las manos tampoco. Navegan con el teclado o con dispositivos que imitan al teclado, como teclados adaptados o pulsadores.
Si el botón «Página siguiente» de un catálogo solo reacciona a onmousedown, esas personas no pueden pasar de página. Se quedan atascadas en la primera.
Cómo evitarlo
- Use elementos nativos que ya funcionan con teclado:
<button>para acciones y<a href>para ir a otra página. - Use el evento
click. En enlaces y botones también se dispara con Intro, y con Espacio en los botones. - Evite que una función dependa solo de
mousedown,mouseup,dblclick,mouseovero de gestos táctiles. - Si usa gestos, como deslizar para pasar fotos, ofrezca también botones que se manejen con teclado.
- Si crea un control propio, dele foco con
tabindex="0"y programe las teclas que la persona espera.
Cómo comprobarlo
- Deje el ratón a un lado y recorra la página con Tab.
- Intente usar cada función con Intro, Espacio o las flechas.
- Si algo solo funciona con el ratón o con el dedo, hay fallo, salvo que dependa del trazo, como una firma a mano.
- En el código, busque manejadores como
onmousedown,ondblclickotouchstartsin equivalente de teclado.
Ejemplo
La flecha de «Página siguiente», primero solo con ratón y después como botón real que también funciona con teclado.
<!-- Incorrecto: solo funciona con el ratón -->
<img src="flecha.svg" alt="Página siguiente" onmousedown="paginaSiguiente()">
<!-- Correcto: funciona con ratón, teclado y tacto -->
<button type="button" onclick="paginaSiguiente()">
<img src="flecha.svg" alt="Página siguiente">
</button>
Ver el texto completo del W3C (traducción al español)
Aplicabilidad
Tecnologías que disponen de manejadores de eventos específicos de dispositivos apuntadores.
Notas sobre la compatibilidad con agentes de usuario y tecnologías de asistencia
- No se indica ninguna.
Descripción
Cuando los manejadores de eventos específicos de dispositivos apuntadores son el único mecanismo disponible para invocar una función del contenido, las personas sin visión (que no pueden usar dispositivos como el ratón, que requieren coordinación entre la vista y la mano), así como quienes deben usar teclados alternativos o dispositivos de entrada que actúan como emuladores de teclado, no podrán acceder a esa función del contenido.
En el criterio de conformidad 2.1.1 Teclado existe una excepción para las funciones que requieren un movimiento del puntero dependiente de la trayectoria.
Ejemplos
Una imagen que responde a un clic de ratón para ir a otra página
Esto es un fallo porque no se puede usar el teclado para pasar a la página siguiente.
<p><img onmousedown="nextPage();" src="nextarrow.gif" alt="Go to next page"></p>
Pruebas
Procedimiento
- Comprobar si los manejadores de eventos específicos de dispositivos apuntadores son el único medio para invocar las funciones del script.
- Comprobar si la función que se invoca requiere información de entrada sobre una trayectoria concreta de un dispositivo apuntador
Resultados esperados
- Si la comprobación n.º 1 es verdadera, se da esta condición de fallo y el contenido falla el criterio de conformidad 2.1.3.
- Si la comprobación n.º 1 es verdadera y la comprobación n.º 2 es falsa, se da esta condición de fallo y el contenido falla los criterios de conformidad 2.1.1 Teclado y 2.1.3 Teclado (sin excepciones).
Cómo lo comprobamos en ADDAW
Este error es uno de los que buscamos en cada auditoría de ADDAW. Se lo entregamos con capturas y la forma de corregirlo.
Basado en la técnica F54 del W3C (WCAG 2.2). Explicación y ejemplos: ADDAW. Traducción no oficial del texto del W3C © W3C, licencia de documentos del W3C. ¿Ha visto un error? Escríbanos.