WAI-ARIA:Javascript能力测试?

WAI-ARIA:Javascript能力测试?,javascript,accessibility,screen-readers,section508,wai-aria,Javascript,Accessibility,Screen Readers,Section508,Wai Aria,本着渐进式增强的精神,我想做一些ARIA功能测试,以实现浏览器支持的其他增强。我不想检测屏幕阅读器——我想确保屏幕阅读器用户在使用工具的情况下获得最佳体验 例如,如果不支持aria live属性,那么实现它可能不是一个好主意 我知道还有一个问题,浏览器可能支持这些属性,但屏幕阅读器可能不支持。由于屏幕阅读器在浏览器上透明运行,我同意忽略边缘情况 我从没听说过有人做过这样的事。它是否像测试浏览器赋予的附加DOM属性一样简单?在这里做马克·帕里格林的另一件工作吗 谢谢 我不想检测屏幕阅读器 对不起,

本着渐进式增强的精神,我想做一些ARIA功能测试,以实现浏览器支持的其他增强。我不想检测屏幕阅读器——我想确保屏幕阅读器用户在使用工具的情况下获得最佳体验

例如,如果不支持
aria live
属性,那么实现它可能不是一个好主意

我知道还有一个问题,浏览器可能支持这些属性,但屏幕阅读器可能不支持。由于屏幕阅读器在浏览器上透明运行,我同意忽略边缘情况

我从没听说过有人做过这样的事。它是否像测试浏览器赋予的附加DOM属性一样简单?在这里做马克·帕里格林的另一件工作吗

谢谢

我不想检测屏幕阅读器

对不起,这正是你想要做的。要检测屏幕阅读器是不可能的,除非他们以某种方式将自己暴露在内容脚本中,而且有许多不同的屏幕阅读器,所以您不应该真正尝试。如果有什么不同的话,您可能可以在支持听觉CSS的浏览器中进行一些黑客操作,以检测屏幕阅读器,但您肯定无法检测特定的ARIA功能是否受支持

如果不支持aria live属性


除了在DOM中提供元素属性访问器之外,没有浏览器真正“支持”ARIA;只有屏幕阅读器/辅助阅读软件支持ARIA,因为它实际上使用ARIA属性帮助用户与网站交互。

第一个答案包含一些不正确的信息。某些浏览器确实支持WAI-ARIA,有些则不支持。浏览器通过操作系统的可访问性API向屏幕阅读器发送事件。例如,如果您使用IE7,它无法处理IE8可以处理的WAI-ARIA。看

也就是说,您不能通过测试来确定支持哪些标记。一般来说,有限的WAI-ARIA支持始于FF2和IE8。查看浏览器的发行说明,确定其支持WAI-ARIA


这里是

如中所述,Derek Featherstone的一篇关于列表的文章是必须阅读的。

为了确保我理解,您需要JavaScript来告诉您,
aria-*
属性是否对当前浏览器有任何影响?因此,如果支持浏览器(合并浏览器和任何可访问性插件)始终确保
aria selected
的值为
true
false
,或
未定义的
,则JavaScript
var div=document.createElement('div');div.setProperty('aria-selected','bogus');如果(div.getProperty('aria-selected')!='bogus'){alert('aria-supported');}
可以工作吗?正确!但是,在许多浏览器中,您可以在DOM元素上设置任意属性值。在您提供的示例中,(为get/setAttribute子绑定get/setProperty),您在我测试的所有浏览器中都会收到警报,包括FF1和Safari 2(两者都不支持任何类型的ARIA)。然而,我正在寻找能够达到这种效果的东西。根据最近一篇分开列表的文章(可能是这个问题的原因?)的发现,屏幕上的读者差异很大。所以屏幕阅读器嗅探将是唯一的方法。