在JavaScript中评估屏幕阅读器的当前状态

在JavaScript中评估屏幕阅读器的当前状态,javascript,audio,accessibility,screen-readers,Javascript,Audio,Accessibility,Screen Readers,在过去的两年里,我一直在做屏幕阅读器优化,没有任何问题,但现在我正在开发一个应用程序,它的核心功能是音频播放。据我所知,当屏幕阅读器正在运行且我的所有音频流正在互相交谈时,无法延迟播放。我已经看过WAI-ARIA规范很多次了,以至于我怀疑我正在寻找的功能是否包含在其中 是否有任何可由JavaScript访问的整体屏幕阅读器API允许我协调应用程序音频以避免与可访问设备重叠?在这里,我可以监听回调或订阅事件,比如window.addEventListener('screenReaderAudioF

在过去的两年里,我一直在做屏幕阅读器优化,没有任何问题,但现在我正在开发一个应用程序,它的核心功能是音频播放。据我所知,当屏幕阅读器正在运行且我的所有音频流正在互相交谈时,无法延迟播放。我已经看过WAI-ARIA规范很多次了,以至于我怀疑我正在寻找的功能是否包含在其中

是否有任何可由JavaScript访问的整体屏幕阅读器API允许我协调应用程序音频以避免与可访问设备重叠?在这里,我可以监听回调或订阅事件,比如
window.addEventListener('screenReaderAudioFinished',handlerFn)


TL;DR我正在寻找JavaScript中的某种方式,以便在屏幕阅读器发言完毕时收到通知。回调、事件、任何事情。

TL;浏览器中不存在您要查找的DR

听起来你正在开发一款游戏,如果这是真的,那么你能做的就是完全接管正在发生的公告——基本上实现你自己的屏幕阅读器。这可以通过在键盘操纵的控件上使用虚拟“光标”实现应用程序区域来实现。这个日历小部件显示了如何通过键盘和手势控制实现这一点

音频输出可以通过您自己的音频管道实现。如果你有播放音频的能力,那么写这篇文章应该相当简单,但是混合选择和优先级可能是困难的部分

当用户移动到不同的控件时,您不仅应该宣布用户移动到的控件,还应该有一个“音频描述”轨迹,描述动画中发生的事情(如果这些是重要的)


如何混音取决于在任何给定时间最重要的内容,以及用户与游戏的交互是否有任何“实时”组件。

您必须阅读WCAG()的音频控制部分

事实上,你想要的与残疾人想要的恰恰相反

所需要的是能够停止应用程序中的音频,并根据需要重新启动它


我要做的是在你的应用程序中提供一个暂停音频的控件,让用户能够知道你的应用程序想用一点嘟嘟声告诉他一些事情(应用程序基本上是一个媒体/音频播放器吗?@unobf部分。它还协调动画和用户交互。感谢分享这些信息。我认为我的实现已经部分符合这一点,因为大部分音频都是通过用户交互来播放的。但是在实践中,这种方法会给t他要求用户在需要导航到任何地方时停止音频。鉴于该项目首先是关于交互式多媒体的,我认为要求用户干预以重新开始播放音频是次优的,因为更有效的操作模式是应用程序根据环境限制自己播放状态。在这里遇到了评论长度限制,但显然这是一个复杂的讨论。我只是想补充一点,音频/视频播放的最终控制权是通过播放/暂停控制权交给用户的。问题是解决方案有点过于简单,对我来说没有用处。正如您所提到的,SR/浏览器集成是最小的,这可能会结束我们的讨论p是最终的限制。希望更好的互操作性即将出现。如果你知道合适的工作组来处理这样的请求,我很乐意分享我的担忧。我认为这个问题应该成为下一个UAAG指南的关注点:(例如2.11.5)。但主要问题是,屏幕阅读器和浏览器今天是两个独立的东西,如果浏览器可以提醒屏幕阅读器其元素,则没有其他方式的提醒(从屏幕阅读器到浏览器)。