kdi*_*zle 6 javascript android accessibility talkback reactjs
正如标题所说,Android Talkback 没有注册该onFocus事件。我知道该onFocus事件从未注册过,因为屏幕阅读器使用了一种特殊类型的可访问性焦点。那么,我们如何驱动/操纵可访问性焦点来为用户提供更好的体验?
我在这里有一个例子:https : //codesandbox.io/s/r54j2mqrl4。所以这里console.log("hello!")没有在移动 Android Talkback 中为我注册,但是它在桌面 mac OSX 上正确注册(没有屏幕阅读器)。我正在使用 Tab 键进行导航。
是否有类似于onFocus用于 Android Talkback 的可访问性焦点的事件?
提前感谢您的时间。
设备和版本:
手机 Android Talkback:三星 Galaxy Tab S2,Android 7.0 版,Google Chrome 62.0.3202.84
桌面 Mac OSX:macOS Sierra 10.12.6,谷歌 Chrome 61.0.3163.100
“.focus()”方法理论上应该有效。如果正在接收“焦点”的事物不会同时接收可访问性焦点,则该问题就会出现。Android 辅助功能服务只能辅助功能聚焦那些也可辅助功能聚焦的事物。
不幸的是,您无法直接从 Javascript 操作 Accessibility Focus,只能操作焦点。话虽如此,当您在 Android 中并且某些内容请求焦点时,这通常表明辅助功能焦点也会随着焦点一起移动到该项目。用 TalkBack 术语来说,这就是选项卡导航的工作原理,辅助功能焦点只是跟随输入焦点。它并不完美,但 Focus 和 Accessibility Focus 希望相同是合理的期望。尽管并非总是如此:EditTexts 在 TalkBack 中可以处于准聚焦/未聚焦状态,这是有充分理由的......您可能需要在字段仍然具有光标(输入焦点)时与屏幕键盘进行交互。
如果以下情况为真:
您可以通过在 Android 设备监视器中进行探索来轻松确认上述三件事。三次检查您是否没有关注您希望获得可访问性焦点的事物(例如元素的子元素)。
如果在那之后,你对这个东西调用 .focus() ,并且它不起作用,那么你基本上已经在用来渲染 HTML/Javascript 内容的 webview 中发现了一个错误,并且你无能为力关于它。
| 归档时间: |
|
| 查看次数: |
3306 次 |
| 最近记录: |