我正在开发一个需要符合section 508标准的asp.net网站。我很困惑,好像我应该使用JavaScript或者根本不使用JavaScript。
我甚至可以使用jQuery的slideUp()
/ slideDown()
来显示/隐藏部分吗?我可以使用jQuery UI的datepicker和模态对话框吗?
答案 0 :(得分:9)
简而言之。一般来说,jQuery UI团队非常了解可访问性问题,并且在大多数(甚至不是所有的)小部件上使用ARIA(http://www.w3.org/WAI/intro/aria)。
话虽如此,但是508兼容并且“可访问”是不同的事情。有各种标准,“508”合规性是最不严格的。
这些天99%的网页都使用动态JavaScript控件,具有不同程度的可访问性。大多数问题发生在人们使用自己的控件而不是使用像jQuery UI这样的良好控件库时。
适用的规则是:
例如,jQuery的对话框小部件在页面上使用标记来获取对话框内容,因此辅助技术(AT)可以访问它。 AT是否正确解释内容不一定是您的关注点,至少在符合508标准方面。这是因为有各种类型的AT与各种操作系统,浏览器等相结合。(l)当页面使用脚本语言来显示内容时,或者 创建界面元素,脚本提供的信息 应使用辅助功能可以阅读的功能文本进行识别 技术
在显示和隐藏内容的情况下,技术上隐藏的内容一旦被显示就可被AT解释。这里的问题是AT如何知道DOM何时发生变化。这取决于AT。在这里,您可以动态更新ARIA状态以通知AT,但AT不一定会尊重和/或实施ARIA标准。
答案 1 :(得分:4)
派对有点晚了,但这个链接出现在谷歌上,所以以为我会添加一些想法。这个主题还有很多需要考虑的地方。
SSB Bart小组对jQuery Ui控件的状态做了很好的总结。
https://www.ssbbartgroup.com/blog/2013/07/03/jquery-ui-accessibility-analysis/
然而,自那篇文章以来,我看到了对标签控件进行了更改。当我对jQuery UI等任何主要网站进行快速测试,甚至是声称“完全可访问”的bootstrap / foundation时,我通常会发现问题。
在测试可访问性时,我通常使用以下一般方法。
这样做可以看到每个jQuery Ui控件失败的地方。他们尝试的并不可怕,但它有一些漏洞和几乎所有的主要框架。
关于幻灯片和滑下来并不重要。重要的是,如果您使用的按钮是键盘可访问的,并且您使用了正确的咏叹调标签,例如aria-hidden等。请参阅http://www.w3.org/TR/wai-aria/states_and_properties以指示隐藏的内容。