Entonces no deberíamos usar solo el color, deberíamos usar errores específicos y mostrarlos , okay, este es el campo donde está el error y cuál es el error, y así sucesivamente. Okay.
Entonces el último escenario son los modelos. Entonces, sobre diálogos y popovers, creo que Hiday hizo una charla muy buena sobre eso ayer. Así que no entraré en eso, pero quiero mostrar algo sobre los modelos. Porque este es uno de los componentes más complejos que existen, así que tenemos algo llamado, aquí me gustaría hablar sobre algo llamado guía de prácticas de autoría por área, es de W3C.
Esto es algo que realmente me gusta porque siempre que estamos creando algo, si estamos confundidos acerca de cuál debería ser la interacción, como cuál debería ser el flujo diferente, ¿verdad? Entonces lo que podemos hacer es ir a patterns y buscar el patrón que estamos intentando. Por ejemplo, aquí un diálogo, podemos ir y ver cuáles son las interacciones previstas que el usuario puede realizar. Estas son las cosas de las que debemos ocuparnos cuando pensamos en la accessibility. Por ejemplo, dará una lista de todas las interacciones de teclado y qué debería suceder como cuando el diálogo se abre, el enfoque debería ir al primer elemento enfoque automático dentro y qué debería hacer la tecla Tab, la tecla Mayús + Tab y todo eso. Escape debería cerrar el diálogo y así sucesivamente. Así que es algo muy interesante para leer, pero en cuanto a eso, anteriormente teníamos que escribirlo todo desde cero.
Teníamos que escribir código JavaScript para crear este elemento de diálogo, pero ahora HTML también tiene un elemento de diálogo, un elemento nativo adjunto, lo cual es genial. Así que podemos usar eso. Y hace casi todas las cosas. Por ejemplo, presiono Enter, el enfoque está adentro, estamos adentro. Presiono Escape, se cierra, el enfoque vuelve al lugar de donde se lo llevó. Pero aún así, el enfoque no está atrapado dentro de este diálogo. Entonces, cuando presiono Tab nuevamente, todavía me muevo a diferentes partes. No hay atrapamiento de enfoque. Entonces, esto podría ser un problema si tenemos un modelo que no tiene nada más además de él. Y si el enfoque se va detrás de la pantalla, eso no es una buena user experience. Entonces, en cambio, lo que debería suceder es que presiono Tab y el enfoque debería estar dentro del modelo. Porque este es el único lugar donde un usuario puede interactuar en este momento si está abierto. Para eso, aún podemos usar algo de código JavaScript para mejorarlo. Lo que podemos hacer es usar un controlador de eventos de teclado y allí podemos tener cierta lógica para... Lo que podemos hacer es obtener elementos enfoque del modelo. Podemos decir, hey, dame todos los elementos enfoque del modelo, que básicamente es solo seleccionar la consulta en el modelo de referencia y obtener botones, anclas, entradas, cualquier elemento interactivo que tengamos dentro de él. Y nos enfocamos en el primer y último elemento activo, y luego podemos poner la lógica de qué hacer cuando tenemos Tab y la tecla Mayús, y cuando estamos en el último... Cuando... Sí.
Comments