Программа чтения с экрана не интерпретирует навигацию по вкладкам?

0

У меня есть всплывающее окно, которое я включил с помощью tabindex=0 с помощью tabindex=0. Когда я взаимодействую со страницей без программы чтения с экрана, я могу использовать клавишу табуляции, чтобы перемещаться между окном и элементами формы, которые он содержит.

Когда я использую свой клиент для чтения с экрана (Window Eyes 8.4) для просмотра моего веб-сайта, я не могу последовательно вставлять его в окно.

Существуют ли какие-либо особые случаи с структурой кода, которые я должен учитывать, что приведет к тому, что окно либо потеряет фокус, либо не позволит интерпретатору экрана отображать разметку всплывающего окна?

Для справки - я нахожусь в веб-приложении ASP.NET MVC4 (страница HTML/CSS/JS), которая генерирует всплывающее окно с окном Kendo UI [Kendo].

  • 0
    Является ли «всплывающее» окно фактически отдельным окном браузера, или это всплывающий элемент, который является частью страницы, но находится над ним?
  • 0
    Это div, который отображается: нет; когда DOM загружается, но отображается после события щелчка. Он построен как модальное окно с фреймворком Kendo UI. Странно то, что он работает правильно с другими программами чтения с экрана (например, JAWS). Элемент живет в нижней части разметки при построении.
Показать ещё 2 комментария
Теги:
accessibility
kendo-ui
screen-readers

2 ответа

0

Трудно ответить без демонстрации, но есть несколько областей для расследования.

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

Если всплывающее окно по существу основано на форме, вы можете попробовать это в диалоговых окнах.

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

Спорадический характер проблемы может быть вызван тем, что читатели экрана, как правило, не читают то, что display:none, а табуляция на что-то, что его там нет, может не срабатывать надежно.

Если вы можете опубликовать пример, я могу обновить этот ответ.

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

Обновление 03/17. Всплывающее окно периодически открывается анонсом устройства чтения с экрана в виде диалогового окна, но как только всплывающие нагрузки, я могу - иногда - вкладку в div, и фокус не теряется. Я не могу последовательно воспроизвести это и только обнаружил это после быстрого нажатия клавиши вкладок после нажатия кнопки, чтобы отобразить всплывающее окно.

С другой стороны (при быстром нажатии клавиши вкладки) фокус последовательно приземляется во всплывающем меню без фокусов (программа чтения с экрана объявляет "диалоговое окно Foo"), но при нажатии первой вкладки фокус переходит на основную страницу в последний элемент действия перед нижним колонтитулом. Нажав вкладку в это время, мы переместим меня в элемент UL нижнего колонтитула.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню