Постановка задачи
У меня есть HTML-страница, которая состоит из iframe (где контент загружается динамически при навигации), и есть другие элементы, например, кнопки, фантазии, навигационные элементы управления и т. д.
Клавиатура Навигация с использованием клавиатуры при первой загрузке:
1. из адресной строки url любым детям на странице
2. Клавиатура Навигация внутри содержимого iframe (поскольку один из элементов перемещает фокус на содержимое iframe)
навигация работает как положено.
Навигация с клавиатуры после обновления содержимого iframe:
Контент iframe обновляется, после этого нажатие клавиши табуляции переходит на вкладку IE11 и повторное нажатие не приводит к фокусировке на каком-либо элементе.
Анализ
Я пробовал следующее:
- Отметил activeElement, нажимая его снова, когда фокус находится на вкладке IE, activeElement указывает на iframe, но нажимая его снова, просто перемещает фокус со страницы, и он возвращается к адресной строке.
- Проверена база кода для свойства tabindex для iframe и других элементов. На iframe tabindex не установлен. Есть несколько элементов, например skipcontent, кнопка выхода и т. д., где установлен порядок tabindex.
- Попытка настройки размытия и фокусировки слушателя событий на элементе тела, чтобы перемещать фокус на нужный элемент (не работает)
- Попытка установки tabindex для iframe, в данном случае на удивление одна из страниц, которая состоит из видео, получает фокус и навигация с помощью клавиатуры работает, как и ожидалось, но другие страницы по-прежнему не получают фокус.
Любые предложения о том, как мне решить эту проблему?
Примечание: я попытался отладить в Chrome, установив пару расширений a11y, но не определил расширение, которое может проверить клавиатуру a11y.