usage tag for color javascript html accessibility screen-readers

tag - ¿Es posible usar javascript para detectar si un lector de pantalla se está ejecutando en una máquina de usuarios?



tag for html (4)

No puede detectar lectores de pantalla usando javascript, no puede detectar lectores de pantalla usando cualquier tecnología del lado del cliente. Puede detectar el software que ejecuta un cliente MSAA utilizando Flash. Más detalles sobre cómo funciona y por qué no es útil y no se debe usar para detectar lectores de pantalla está disponible aquí: Cuidado para el desarrollador: usar Flash para detectar lectores de pantalla

Quiero detectar si un lector de pantalla se está ejecutando en la máquina de un usuario para evitar el choque de sonido con la etiqueta de audio en html. Si es así, por favor proporcione detalles sobre cómo se podría hacer esto.


Probablemente no debería intentar hacer nada especial, incluso si pudiera detectar que se está ejecutando un lector de pantalla. Incluso si lo hace bien para un grupo de usuarios del lector de pantalla, puede hacerlo mal para otro grupo. Es mejor concentrarse en escribir HTML5 limpio y bueno en primer lugar.

Tenga en cuenta que no todos los usuarios del lector de pantalla usan texto a voz; muchos usan salida braille. Además, otros tipos de herramientas de accesibilidad, como los resaltadores de contenido y las aplicaciones de entrada de voz, utilizan las mismas técnicas y API (por ejemplo, DOM, MSAA) que los lectores de pantalla, por lo que cualquier técnica que "detecte un lector de pantalla" probablemente también lo detectará. no puede asumir que significa que el usuario está completamente ciego y usa solo el habla.

Tal como están las cosas actualmente, la etiqueta de audio actualmente no es accesible universalmente, los diferentes navegadores tienen diferentes niveles de compatibilidad con accesibilidad: consulte Accesibilidad de HTML5 y desplácese hacia abajo hasta el audio para obtener más detalles sobre la compatibilidad actual. He visto algunas páginas que agregan controles basados ​​en HTML5 más javascript después de la etiqueta de audio para que puedan proporcionar su propia interfaz de usuario para garantizar que los usuarios de teclado o pantalla puedan reproducir / detener el audio según sea necesario. (Eventualmente, cuando los navegadores se ponen al día, esto no debería ser necesario).

En lo que respecta a la accesibilidad general, WCAG 2.0 ( Pautas de accesibilidad del contenido web ) recomienda que cualquier audio que se reproduzca automáticamente durante más de 3 segundos tenga un medio accesible para pausar o detener el audio. (Iría aún más lejos y recomendaría el uso de audio automático: al usar la navegación con pestañas, a menudo es imposible determinar de qué pestaña proviene el audio).


Si bien es probable que no sea una forma totalmente confiable, el progreso de un lector de pantalla se puede detectar a través de javascript utilizando el evento de enfoque, ya que el usuario hojea el contenido.

Un "enlace de navegación de salto" oculto ( http://webaim.org/techniques/skipnav/ ) en caso de estar enfocado, sería una forma de detectar si alguien está usando un lector de pantalla.

Aunque no aborda la parte de audio de la pregunta, solo quería proporcionar esta solución parcial, ya que estaba buscando posibles formas de detectar los lectores de pantalla.