accessibility - 标签上的 for 和 select 标签上的 aria-labelledby 是否正确?
问题描述
对于上下文,我遇到的问题是在 NVDA 和 JAWS 屏幕阅读器中,然后用户在下拉列表中选择一个选项,它不会宣布选择。所以我想也许这会解决这个问题。不幸的是,由于我没有 Windows 计算机,因此无法对其进行测试。
我想知道是否改变这个:
<label for="select-id" > Some Label </label>
<select id="select-id">
<option> </option</>. (empty option on purpose to have nothing selected)
<option> A </option</>
<option> B </option</>
</select>
对此,将解决我的问题。
<label for="select-id" id="label-id"> Some Label </label>
<select id="select-id" aria-labelledby="label-id">
<option> </option</>. (empty option on purpose to have nothing selected)
<option> A </option</>
<option> B </option</>
</select>
谢谢!
解决方案
不,这不会有任何区别,该关联已经与for="idOfElement"
.
至于宣布选择,那么我从给出的 HTML 中唯一能看到的是你没有 a value
on the <option>
(好吧,选项是相同的,但我假设这纯粹是为了示例)。它不应该有所作为,但因为我从来没有在<select>
不使用value
选项属性的情况下创建一个,这是我唯一能看到/想到的。
对于 Clarity(因为尚不完全清楚您所描述的行为),它不会在您选择项目时宣布,因为在您循环选择选项时应该已经宣布。
预期行为:
- 重点选择“选项1选定标签宣布”应阅读
- 按下箭头“选项 2”将被读取
- 按“输入”将没有公告。
推荐阅读
- node.js - React setState 导致崩溃
- html - 如何重置输入单选按钮?
- python - 如何在 Python (Mac) 中将文件复制到剪贴板
- angular - Angular 2+如何使用ngmodel验证输入的最大允许值
- ios - 无法通过 UNUserNotificationCenter 获得重复的每日通知以显示
- typo3 - 我正在寻找可以将图像链接到页面的 TYPO3 画廊扩展程序?
- firebase - 通过一个应用访问多个 Firebase 数据库
- javascript - 关于在 javascript 中使用数组进行 web 编程的问题
- python-3.x - 查找列表中所有不重叠的区间
- javascript - 合并对象数组中的重复项,连接嵌套数组