![](/img/trans.png)
[英]Accessibility - Android Talkback doesn't fire focus event on HTML content
[英]Android Talkback not registering onFocus for web. How do I manipulate accessibility focus with Android Talkback?
如标题所示,Android Talkback未注册onFocus
事件。 我知道onFocus
事件从未注册过,因为屏幕阅读器使用的是特殊类型的可访问性焦点 。 那么,我们如何才能驱动/操纵可访问性焦点,从而为用户提供更好的体验?
我在这里有一个示例: https : //codesandbox.io/s/r54j2mqrl4 。 因此,此处console.log("hello!")
不在移动Android Talkback中为我注册,但是在台式机Mac OSX(未启用屏幕阅读器)上已正确注册。 我正在使用Tab键进行导航。
是否有类似于onFocus
事件的内容可用于Android Talkback的可访问性焦点?
预先感谢您的宝贵时间。
设备和版本 :
移动Android对讲:Samsung Galaxy Tab S2,Android 7.0版,Google Chrome 62.0.3202.84
桌面Mac OSX:macOS Sierra 10.12.6,Google Chrome 61.0.3163.100
理论上,“。focus()”方法应该有效。 如果正在接收“焦点”的事物也不会获得可访问性焦点,则该问题将发挥作用。 Android可访问性服务只能关注可访问性,而可访问性也应针对。
不幸的是,您不能直接从Javascript操作Accessibility Focus,而只能操作Focus。 话虽这么说,当您使用Android且某些内容需要焦点时,这通常表明可访问性焦点也将与焦点一起移至该项目。 用话语提示来说,这就是Tab导航的工作方式,“辅助功能焦点”仅跟随输入焦点。 这不是完美的,但是可以合理地期望Focus和Accessibility Focus保持一致。 并非总是如此:出于充分的原因,EditTexts在TalkBack中可以处于准聚焦/未聚焦状态...您可能需要在字段仍具有光标(输入焦点)的情况下与屏幕键盘进行交互。
如果满足以下条件:
您可以通过在Android设备监视器中进行浏览轻松确认上述三件事。 仔细检查您是否没有将某个对象(例如元素的子对象)集中在您希望获得可访问性上。
如果之后,您在该事物上调用了.focus(),但它不起作用,则说明您实际上在用于呈现HTML / Javascript内容的Web视图中发现了一个错误,那么您将无能为力关于它。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.