reactjs - NVDA 自动切换到表单模式

标签 reactjs firefox navigation accessibility nvda

目前我的 React 组件由几个标签和一个输入框组成。它有查看模式和编辑模式。

当我进入编辑模式时,NVDA 自动进入表单模式,因此我无法在输入框中输入任何文本或使用箭头键浏览标签。

默认情况下,按 Enter 键后,NVDA 进入表单模式(请参阅 NVDA's keyboard shortcuts for forms ),该模式将所有下一个键盘输入作为某些命令的快捷方式。要退出该模式,我们需要使用 NVDA 键(默认为 insert 键)+ 空格。之后,我们就可以继续打字了。当箭头键开始读取每个字符时,我们甚至无法通过它进行导航。

只读:ReadOnly Looks like this

编辑模式:Edit Mode looks like this

有没有办法阻止 NVDA 自动进入表单模式? 任何帮助将不胜感激。

NVDA版本:2018.11 火狐浏览器:60.0.1(64位)

最佳答案

我不确定我是否明白问题所在。

您的表单模式向后。当处于表单模式时(意味着您处于 <form> ),您想要在输入字段等中输入内容。键盘事件将发送到表单而不是屏幕阅读器,以便您键入的内容就是您看到的内容。

退出表单模式后,您将返回“屏幕阅读器模式”,并且您键入的字符将被解释为屏幕阅读器快速导航键(例如“B”转到下一个按钮,“T”转到下一个按钮)到下一个表,等等)。

NVDA(和 JAWS)可以选择当焦点转到表单元素时是否自动进入表单模式。

鉴于此,您是在问如何强制屏幕阅读器切换模式吗?

关于reactjs - NVDA 自动切换到表单模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50445734/

相关文章:

html - 构建流畅的水平导航

javascript - react - react 路由器 - privateRoute - 无限循环

reactjs - 使用 useState-hook 从内部改变样式组件

reactjs - 使用 Route render 时,ReactComponent 没有与类型 'IntrinsicAttributes & { children?: ReactNode; }' 相同的属性

reactjs - React-Query - 使用 react-testing-library 进行单元测试

firefox - 基于Firefox的 `-app`开关构建独立的XUL程序

html - 滑入式菜单 : witdth and position:fixed

Javascript : how to preserve newlines with textContent in Firefox?

security - 在 Firefox 14 中禁用 "Although this page is encrypted...."

c# - 使用 ContentControl 在 WPF 中显示 View 不起作用