ВАЖНОЕ ПРИМЕЧАНИЕ : роль и шаблон menu
предназначены для использования в приложениях.Если вы хотите создать меню для простого веб-сайта, вы должны использовать navigation
роль
Теперь отвечая на ваш вопрос ...
Вы описываете, чтоmenuitemradio
роль предназначена для: (примечание: это также может быть menutitemcheckbox
, если различные варианты не являются исключительными )
<ul role="menu">
<li role="none" id="group_header">Header</li>
<li role="group" aria-describedby="group_header">
<button role="menuitemradio">Option A</button>
<button role="menuitemradio">Option B</button>
<button role="menuitemradio">Option C</button></li>
<li role="none">
<button role="menuitem">Button Foo</button>
</li>
</ul>
IХотелось бы, чтобы пользователь использовал клавиши ВЛЕВО / ВПРАВО для перемещения между кнопками внутри элемента списка.
Вы можете просмотреть реквизиты для взаимодействия с клавиатурой для menu
элементов роли наWAI ARIA Authoring практика , которая включает в себя больше, чем просто левая и правая клавиши.Так что вам придется полагаться на важные разработки javascript для вашего приложения.
Примечание : Помните, что если вы разрабатываете веб-сайт (поэтому ваше меню не будет вapplication
роль), вы должны использовать роль navigation
.Это было бы проще, и вы могли бы использовать любые стандартные элементы HTML, такие как input[type='radio']
, которые будут обрабатывать левую и правую клавиши по умолчанию:
<ul role="navigation" aria-label="Menu">
<li><div id="group_header">Header</div>
<div role="group" aria-describedby="group_header">
<label><input type="radio" name="item" /> Option A</label>
<label><input type="radio" name="item" /> Option B</label>
<label><input type="radio" name="item" /> Option C</label>
</div>
</li>
<li><button>Button Foo</button></li>
</ul>
Обсуждение темы "меню не для веб-сайта"