accessibility android跳过导航链接不起作用

时间:2017-09-15 15:33:36

标签: android accessibility talkback

我已在我的网络应用中添加了跳转到标题上的主要内容链接。它在Windows和MacOS中按预期工作。它甚至可以在iPhone中按预期工作。但同样不适用于Android chrome / talk back。

当我进一步检查时,即使在webaim.org中,此跳过导航链接也不起作用。我引用的代码https://www.bignerdranch.com/blog/web-accessibility-skip-navigation-links/

有人可以帮助解决为什么android chrome有这个问题吗?它是一种浏览器行为吗?请帮忙。

1 个答案:

答案 0 :(得分:3)

让我们分析一下这种情况下发生的事情。

  

1)TalkBack将ACCESSIBILITY_FOCUS设置为元素

这非常重要,请注意,这表示ACCESSIBILITY_FOCUS不是FOCUS。要使隐藏的skipnav链接变得可见,需要使用FOCUS将元素标记为可见(或者可能在屏幕上移动它):focus伪选择器是一种非常常见的实现。这样一个控件收到FOCUS是非常重要的,它从来没有使用过TalkBack。

  

2)用户双击以点击他们刚刚听到的元素获得焦点。

当用户激活控件时,物理点击事件被设置到控件的屏幕焦点矩形的中间。与实际触摸屏幕类似。

  

3)浏览器会在页面上看到物理点击事件。

TalkBack基本上盲目地将鼠标按下事件发送到页面的一个区域,该区域没有任何内容,或者可能是另一个控件覆盖了这个不可见元素。无论哪种方式,浏览器想要点击的内容从来都不是“可见的”#34;因为它从未正确获取FOCUS ACCESSIBILITY_FOCUS,所以控件不会被点击。