【问题标题】:Accessibility - Android Talkback doesn't fire focus event on HTML content辅助功能 - Android Talkback 不会在 HTML 内容上触发焦点事件
【发布时间】:2015-06-23 15:00:43
【问题描述】:

我正在尝试在 HTML 页面上使用 Android 设备 (Moto G Android 4.4.3) 上的 Talkback 执行/接收onfocus HTML 事件,同时选择input 字段。

我使用onfocus 事件在单个输入文本上创建:当使用带有对讲的“触摸浏览器”时,该事件永远不会被调用。当我使用 Talkback 选择/悬停它时,我的字段上有一个小轮廓,但它不是 HTML :focus 状态:

<input type="text" id="myInput" onfocus="focusFunction()" onblur="blurFunction()">

查看这个小提琴的例子:https://jsfiddle.net/hpgqmz7f/embedded/result/

在 IOS + VoiceOver 或 Chrome@PC + NVDA 上,调用焦点事件没有问题..

感谢您的帮助

编辑:this page 表明使用辅助技术,Talkback 应该触发对第一次点击的关注

【问题讨论】:

  • 双击时会发生什么?
  • 双击没问题(聚焦、点击、触摸等触发),但我不想这样做,我需要点击一下。
  • 你想要的不是它的工作方式
  • 它应该并且在 IOS 或 PC 上完美运行。在第一次使用辅助技术时,android 应该触发焦点,与此页面相关:patrickhlauke.github.io/touch/tests/results/… 还是我错过了其他东西?谢谢
  • 单击后不应聚焦。单击焦点更改 Android TalkBack 焦点。您误解了对讲的工作原理。焦点和辅助功能焦点是两个不同的东西,需要进行不同的跟踪才能使 Android 屏幕阅读器正常工作。

标签: javascript android html accessibility talkback


【解决方案1】:

设计用于触摸屏的移动屏幕阅读器(VoiceOver 和 TalkBack)引入了一种特殊类型的“辅助功能焦点”。此焦点仅由辅助技术跟踪。 AT 跟踪此焦点与您在 Web 开发白话中习惯的其他类型的焦点分开。正是这种类型的焦点在单击后会转移,称为触摸探索。两种主要的移动屏幕阅读器都支持触摸探索模式。这就是您的文本字段 onFocus 事件未触发的原因。它还没有获得焦点。它已收到“辅助功能焦点”,并且在用户双击后,它应该会收到一个点击事件,然后应该会触发正常的焦点事件。

【讨论】:

  • 有没有办法触发onTap 事件或onAccessbilityFocus 事件?换句话说,有没有办法操纵可访问性焦点?我目前在使用 Android 的 Talkback 时遇到类似问题。
  • 您不需要触发点击事件来操作焦点。提出问题并在此处链接,我会回答。
  • 嗨,这是我发布的问题:stackoverflow.com/questions/47315314/…
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多