如何在单击按钮时触发 JAWS 文本到语音?

How to trigger JAWS text-to-speech on button click?

我的公司正在进行一些 ADA 一致性修订。当用户与之交互时,我需要读取按钮文本 aria-label 或 .. 会发生这种情况吗?

当用户导航到按钮时,应阅读按钮文本。这可以通过 tab 或屏幕 reader 快捷键(例如 B 转到下一个按钮,以及其他几个方式。

您是说要在用户导航到按钮标签时宣布按钮标签 并且在用户选择按钮标签时 ?这听起来像是不寻常的行为,但在您的应用程序上下文中也许是有意义的。

如果您希望在选择按钮时宣布某些内容,可以使用 aria-live 来实现。您必须欺骗屏幕 reader 说出来。您可以有一个视觉上隐藏的元素,例如

<div id="foo" aria-live="polite" class="sr-only"></div>

(注意:有关 "sr-only" class 的信息,请参见 What is sr-only in Bootstrap 3?。)

选择该按钮后,将您要播报的文本插入

即可读取。

屏幕 Reader 将在按钮进入选项卡焦点时宣布按钮的标题,并让用户知道它是一个按钮。不过,作为基本要求,应该使用原生 <button> 元素,因为该功能已经内置。话虽如此,默认情况下您不需要任何其他特定的 aria 标签。

我猜您只是想知道如何标记按钮,以便 JAWS 在用户使用 Tab 键或光标指向它时说出它的文本。 如果它是一个带有文字的原生按钮: JAWS 会自动读取它。 如果它是带有文本值的 input:button: <输入类型="button" 值="Next" /> 同样,JAWS 将自动朗读其文本。 如果它是一个带有图标的按钮: <按钮> 像这样标记它,JAWS 会说出它的名字(如果您使用不同的语言,请记住更改 aria-label 文本): 希望这有帮助。