Jquery ui 可访问性:当用户无法在日期选择器中选择禁用日期时,是否需要使用ARIA-disabled='TRUE'标记禁用日期/月份
我正在研究网页可访问性。我们的客户与web易访问性专家一起测试该网站,并向我们提供一份需要修复或修改该网站的手册 关于日期选择器,专家评论如下 使用ARIA角色和属性定义日期选择器。 有关详细信息,请参见附录A,可访问日期选择器要求 注意:如果禁用了月份或日期,则活动元素上的user aria disabled=true表示禁用状态 下面是代码示例Jquery ui 可访问性:当用户无法在日期选择器中选择禁用日期时,是否需要使用ARIA-disabled='TRUE'标记禁用日期/月份,jquery-ui,accessibility,datetimepicker,Jquery Ui,Accessibility,Datetimepicker,我正在研究网页可访问性。我们的客户与web易访问性专家一起测试该网站,并向我们提供一份需要修复或修改该网站的手册 关于日期选择器,专家评论如下 使用ARIA角色和属性定义日期选择器。 有关详细信息,请参见附录A,可访问日期选择器要求 注意:如果禁用了月份或日期,则活动元素上的user aria disabled=true表示禁用状态 下面是代码示例 <lable> Date: <input id="dp" type="text" /> </lable>
<lable>
Date:
<input id="dp" type="text" />
</lable>
/** JS CODE **/
$(function() {
$('#dp, #dp1').datepicker({
defaultDate: new Date(),
minDate: new Date()
});
});
我的小提琴:
我正在使用jQuery日期选择器。键盘用户不能在minDate之前移动光标。例如,如果minDate设置为“今天”,键盘用户就不能在今天之前选择或移动光标。现在是否需要使用aria disabled='true'标记禁用的前一天
我的理解是,如果不允许用户在minDate之前移动,那么用aria disabled标记禁用日期是没有意义的
任何形式的建议,请谅解: 简短的回答是“是”。不可选择的日期必须禁用aria='true' 虽然您正确地认为不可选择的日期不能使用键盘聚焦,但屏幕阅读器用户可以使用屏幕阅读器快捷键导航到这些日期。由于月份是一个月,屏幕阅读器用户可以使用ctrl+alt+arrowkey在表格中导航,就像它是一个电子表格一样。使用屏幕阅读器快捷键时,视觉焦点不移动,但屏幕阅读器将读取表格单元格中的数据。看起来jquery正在使用一个样式表class='ui-datepicker-unselectable ui state disabled',从视觉上使不可选择的日期看起来不同于常规日期,但是屏幕阅读器不知道样式表的意图。您需要通过aria disabled='true'告诉屏幕阅读器单元格已禁用 对于禁用的日期,生成的html应该是这样的:
<td class="ui-datepicker-unselectable ui-state-disabled" aria-disabled="true">
<span class="ui-state-default">4</span>
</td>
你想要的是:
<th>
<span aria-hidden='true'>Mo</span>
<span class='visually-hidden'>Monday</span>
</th>
如果我正确识别了报告的样式,那么应该在报告的附录A中定义视觉隐藏类,靠近附录的开头。对于没有报告的读者,您可以查看关于隐藏内容和关于隐藏内容的内容。谢谢您的回复。我已经研究了jQuery日期选择器API。没有发现任何有用的东西。我必须手动操作日期选择器生成的HTML代码。但是有没有符合WCG2.0规范的日期选择器呢?在谷歌上搜索一下可访问的日期选择器,你会在结果的顶部找到5个好的日期选择器。
<th>
<span aria-hidden='true'>Mo</span>
<span class='visually-hidden'>Monday</span>
</th>