Подтвердить что ты не робот

Можно ли использовать javascript для определения, работает ли программа чтения с экрана на компьютере пользователя?

Я хочу определить, работает ли программа чтения с экрана на компьютере пользователя, чтобы избежать столкновения звука со звуковым тегом в html. Если да, предоставьте подробную информацию о том, как это можно сделать.

4b9b3361

Ответ 1

Вероятно, вы не должны пытаться делать что-либо особенное, даже если вы обнаружите, что работает прошивка. Даже если вы правильно это понимаете для одной группы пользователей, занимающихся прокруткой, вы можете ошибаться в другой группе. Лучше всего сосредоточиться на написании хорошего чистого HTML5 в первую очередь.

Обратите внимание, что не все пользователи экранного чтения используют текст в речь; много использование выход Брайля. Кроме того, другие типы средств обеспечения доступности, такие как элементы выделения контента и приложения для ввода голоса, используют те же методы и API (например, DOM, MSAA), которые делают прошивки, поэтому любой метод, который "обнаруживает сканер", скорее всего, также обнаружит их вы не можете предположить, что это означает, что пользователь полностью слеп и использует только речь.

В настоящее время звуковой тег в настоящее время не универсально доступен, разные браузеры имеют разные уровни поддержки доступности - см. HTML5 Доступность и прокрутка до звука для получения более подробной информации о текущей поддержке. Я видел некоторые страницы, которые добавляют элементы управления на основе HTML5 плюс javascript после тега аудио, чтобы они могли предоставить свой собственный пользовательский интерфейс, чтобы пользователи клавиатуры или экрана могли воспроизводить/останавливать звук по мере необходимости. (В конце концов, когда браузеры догоняют, это не требуется.)

Что касается общей доступности, WCAG 2.0 (Руководства по доступности веб-контента) рекомендует, чтобы любой звук, который воспроизводится автоматически более 3 секунд, должен имеют доступные средства для приостановки или остановки звука. (Я бы пошел еще дальше и не рекомендую использовать любое автоматическое аудио - при использовании просмотра с вкладками часто невозможно определить, с какой вкладки поступает звук.)

Ответ 2

Вы не можете обнаруживать устройства чтения с экрана, используя javascript, вы не можете обнаруживать устройства для чтения с экрана с использованием любой технологии на стороне клиента. Вы можете обнаружить программное обеспечение, на котором работает MSAA клиент, используя Flash. Более подробная информация о том, как это работает и почему она не полезна и не должна использоваться для обнаружения программ чтения с экрана, доступна здесь: Разработчик Осторожно: использование Flash для обнаружения экранных читателей

Ответ 3

Несмотря на то, что, вероятно, не полностью надежный способ, процесс чтения с экрана может быть обнаружен с помощью javascript с использованием события фокуса, поскольку пользователь просматривает контент.

Скрытая "ссылка на пропустить навигацию" (http://webaim.org/techniques/skipnav/), если она будет сфокусирована, будет одним из способов определить, использует ли кто-либо Экранный.

Несмотря на то, что это не касается звуковой части вопроса, я просто хотел предоставить это частичное решение, поскольку я искал возможные способы обнаружения самих экранных считывателей.