#html #accessibility #wai-aria
#HTML #Специальные возможности #вай-ария
Вопрос:
Я создаю пользовательский компонент Typeahead и пытаюсь убедиться, что всплывающее окно Typeahead доступно через клавиатурную навигацию. Это моя HTML-разметка:
<div class="wrapper">
<input type="text" ...>
<div class="data-wrapper" tabindex="-1">
<ul>
<li>
<button tabindex="0">John Doe</button>
</li>
<li>
<button tabindex="0">Mary Poppins</button>
</li>
</ul>
</div>
</div>
Я не могу вкладывать вкладки в кнопки (когда я нажимаю TAB, я возвращаюсь в адресную строку, когда присутствует только эта разметка). Однако, если я добавлю tabindex
свойство к <li>
элементам, я смогу добавлять вкладки в элементы списка. Однако я не могу нажимать кнопки, потому что клавиатура сосредоточена на элементе списка. Как я должен настроить фокус для навигации по кнопкам с помощью клавиатуры?
РЕДАКТИРОВАТЬ: Или, что еще лучше, возможно ли изменить поведение заголовка типа; чтобы по нему можно было перемещаться с помощью клавиш со стрелками (например, полей выбора).
Комментарии:
1. Хорошие примеры здесь: w3.org/TR/wai-aria-practices/examples/combobox/aria1.1pattern /…
2. Спасибо вам за это. Используя это, я смог реализовать то, что мне было нужно. Здесь есть несколько интересных предостережений, например, даже если список пуст, список должен существовать в DOM для работы инструментов доступности. Если вы добавляете список динамически, это не так.