我正在使用JAWS阅读器测试我的网页以获取辅助功能。以下是我页面上的HTML标记示例。
<label for="MySelectBox">Select a color</label>
<select id="MySelectBox">
<option>Red</option>
<option>Blue</option>
<option>Green</option>
</select>
通过键盘导航页面并使用向下箭头键更改选择框值时,按下箭头时JAWS不会读取更改的值。
我在这里缺少什么?我是否应该添加任何其他ARIA标签以使JAWS识别更改事件?
答案 0 :(得分:1)
这个看起来很奇怪。您可以通过首先创建测试html页面来调试它,该页面仅包含您在此处粘贴的代码并在相同的设置下进行测试。如果可行,您可能需要返回页面并检查此选择框上方的格式不正确的标记。有时,未封闭的标签(典型的罪魁祸首:<LI>
和<BR>
)以及错误的JavaScript / Jquery元素操作会给屏幕阅读器带来问题。如果可能,请将您呈现的页面的HTML内容发布到此处供其他人查看。
答案 1 :(得分:0)
对于其他可能会看到此内容的人,我在 JAWS 上阅读ListItems
中存储的DropDownList
时遇到了问题。
我之前只在Chrome中测试过,在阅读了此处在Firefox中测试的评论后, JAWS 会在您使用箭头滚动ListItems
时阅读DropDownList
键。因此,这必须是Chrome的兼容性问题。
答案 2 :(得分:0)
你需要添加aria-live =&#34;断言&#34;到选择标签。 参考:http://www.freedomscientific.com/Training/Surfs-Up/AriaLiveRegions.htm
答案 3 :(得分:0)
JAWS不会读取 <option>Red</option>
的文字。
<option>
应具有咏叹调属性,即 aria-label =“value”。
<option>
元素应为<option
aria-label =“red”>Red</option>
。
答案 4 :(得分:0)
我正在使用asp:Dropwnlist
。这对我有用:
aria-live="assertive"
添加到<asp:DropDownList> </asp:DropDownList>
标记arial-label="whatevervalue"
添加到<asp:ListItem/>
标记使用Chrome + NVDA屏幕阅读器进行了测试
答案 5 :(得分:0)
我遇到了与此类似的问题,这就是我为修复此问题而添加的内容。您可能需要使用其他形式的activedescendant,但是当您按下向下箭头时,您需要一些技巧来专注于选择。 https://www.w3.org/TR/wai-aria-practices/#kbd_focus_activedescendant
aria-live =“ assertive value” aria-required =“ true” aria-activedescendant =“ ID_REF”