我的应用程序中有一个过滤器组件。它是按钮列表,一次只能选择其中一个。选择过滤器后,它将在单个面板中更改/过滤内容。在这种情况下,我应该利用哪些可访问性做法来使其更易于访问?
这是一个非常常见的用例,但似乎与WAI ARIA示例中说明的任何patterns都不直接匹配。 根据我的说法,过滤器的功能可以归为以下一种模式:
任何指针或示例?
答案 0 :(得分:1)
在我看来aria-controls
是一个不错的选择。
您的按钮组再现了实际上是radiogroup
选择,只选择了一个选择。
对于屏幕阅读器用户来说,使用radio
元素是一种很好的方法(您可以完全自定义它们,使其看起来像是按钮),然后在aria-control
元素上应用radiogroup
。
这里有完整的ARIA,但是您可以完美地使用本机input[type='radio']
元素。
<div role="radiogroup" aria-controls="panel1" aria-labelledby="filter">
<div id="filter">Filter by</div>
<div role="radio" aria-checked="true" tabindex="0">Filter 1</div>
<div role="radio" tabindex="0">Filter 2</div>
</div>
<div id="panel1">
Results here
</div>