本着渐进增强的精神,我想做一些ARIA功能测试,以实现额外的增强功能(如果浏览器支持的话)。我不希望检测屏幕阅读器--我希望确保屏幕阅读器用户在使用工具的情况下获得最佳体验。
例如,如果不支持aria-live属性,那么实现endless scrolling可能不是一个好主意。
我知道还有一个额外的问题,即浏览器可能支持这些属性,但屏幕阅读器可能不支持。因为屏幕阅读器透明地运行在浏览器上,所以我可以忽略边缘情况。
我从来没听说过有人会做这样的事。它是否像测试浏览器赋予的其他DOM属性一样简单?马克·皮尔格林的另一个capability testing techniques能在这里工作吗?
谢谢!
发布于 2011-06-18 03:01:37
第一个答案有一些不正确的信息。某些浏览器支持WAI-ARIA,有些则不支持。浏览器通过操作系统的辅助功能API向屏幕阅读器发送事件。例如,如果你使用IE7,它就不能处理IE8可以处理的WAI-ARIA。看看this graphic
也就是说,您不能通过测试来确定支持哪些标签。一般来说,有限的WAI-ARIA支持始于FF2和IE8。查看浏览器的发行说明以确定其具有哪些WAI-ARIA支持。
这是a link that details testing WAI-ARIA
发布于 2010-12-07 11:24:13
我不打算检测屏幕阅读器
我很抱歉,但这正是你要做的。除非以某种方式将自己暴露在内容脚本中,否则不可能检测到屏幕阅读器,而且有许多不同的屏幕阅读器,因此您不应该真正尝试。如果有什么不同的话,您也许能够在支持有声CSS的浏览器中使用一些技巧来检测屏幕阅读器,但您肯定无法检测某个ARIA功能是否受支持。
如果不支持aria-live属性,则为
除了在DOM中提供元素属性访问器之外,没有浏览器真正“支持”ARIA;只有屏幕阅读器/辅助阅读软件支持ARIA,因为它实际上使用ARIA属性来帮助用户与网站交互。
发布于 2012-02-07 17:38:37
正如在@ChrisMorgan’s comment中提到的,Derek Featherstone在the difficulties of implementing ARIA gracefully上的A List Derek文章是一篇必读的文章。
https://stackoverflow.com/questions/4337060
复制相似问题