javascript - React - 键盘可访问性 - 如果打开,则仅限于网页内容或模式内容(避免通过浏览器工具栏进行 TABing)
问题描述
我正在我的 React 应用程序中实现键盘可访问性。在:focus-visible
伪类a, input, button, textarea, select
元素上,我应用了轮廓边框,效果很好。但问题是,通过应用程序的选项卡不仅限于应用程序内容,一旦我结束通过应用程序内容的选项卡,它就会将焦点转移到浏览器的工具栏(书签工具栏、插件工具栏和其他浏览器选项)上。
问题:
如何仅在应用内容上限制选项卡?因此,当我第一次按 TAB 时,它应该从例如标题导航栏链接开始,一旦我到达终点(即通过页脚链接导航),它应该从起点(标题导航栏)再次开始。
第二个问题:如果打开了模态,键盘可访问性不会仅锁定/捕获模态内容(应该是),但是一旦我通过所有模态元素 TAB,TABing 就会继续在应用程序的其余部分,在打开的模态下方。当模式打开时,如何通过应用程序的其余部分禁用 TABing?
解决方案
推荐阅读
- php - 在 woocommerce 中向供应商发送 PO 时使用 COGS 字段
- python - 通过部分匹配 r 中的另一个数据帧来对数据帧进行子集化(对 python/pandas 解决方案开放)
- java - Maven 不运行单元测试 - 方法名称约定
- javascript - Jinja 模板未在 javascript 中正确呈现 Date 对象
- javascript - 使用 TypeScript 动态加载文件?
- java - 如何使用 AWS STS 为 s3 中的文件的特定资源创建只读和只写令牌
- c++ - 致命错误:unordered_map:没有这样的文件或目录(C++ 98,gcc 4.8.5,使用 CMAKE)
- javascript - 为什么 `export default` 会导出带有 `default` 的对象而不是对象本身?
- javascript - 使用 json 时无法将属性“innerHTML”设置为 null
- java - 如何对 MultiValuedMap 中包含的 Doubles 的 ArrayList 进行排序