NVDA-屏幕阅读器过渡后将不会单击页面上的任何按钮,除非在顶部添加了假的不可见按钮

问题描述

我在一个正在使用网站的NVDA屏幕阅读软件上遇到一个非常奇怪的错误,该网站正在我的网站上运行,它拒绝单击页面上的某个元素,并随机将焦点切换到页面上其他位置的另一个元素。

在启用NVDA屏幕阅读软件的情况下,首先转到以下URL:https://campaigns.adimo.co/campaigns/recipes/ramsay/#/list?touchpointIdentifier=b3e57a2b-8140-47e7-b603-abcad04591d5&recipeId=51004&recipeWebsiteId=124&retailerId=null

选择配料列表底部的绿色大按钮(在灰色区域)。在下一页登录屏幕,请注意,右上角的绿色和白色后退箭头已突出显示(焦点状态)。现在,按Enter键或空格键,然后将焦点切换到左上方的灰色关闭“ X”按钮。当在模式弹出窗口中以其正确的上下文使用它时,将关闭弹出窗口。如果删除关闭按钮,绿色的后退箭头将完全无法工作(使用Enter和Space键),但是我可以用鼠标单击它。

如果我在包含后退箭头按钮的<section id="add-to-basket">元素之前添加以下标记(这相当于一个伪造/不可见的按钮),那甚至会更奇怪:

<button type="button" onclick="alert('This is required to fix a bug with NVDA!')"
  style="visibility: hidden; padding: 0; margin: 0; height: 0; width: 0; font-size: 0; border: none;"
  tabindex="-1" aria-hidden="true">NVDA Bug fix!</button>

这显然是一个非常模糊的解决方法,我很想深入了解正在发生的事情。

我正在Windows 10和Google Chrome上使用NVDA 2020.3进行测试。

我已经使用适用于macOS(VoiceOver)和Windows 10(Narrator)的内置屏幕阅读器软件对此进行了测试,两者都可以正常工作。可以使用鼠标和键盘(使用Tab / enter进行键盘导航)正常工作。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)