我想让我的应用程序可访问。
我的应用程序想要在屏幕阅读器打开和关闭时表现不同
例如:http://jsbin.com/pakiwuqa/6/edit
当屏幕阅读器(下颚)打开时#textContent应该在#btn1或#btn2之后显示,
当屏幕阅读器(下颚)关闭时#textContent不应该在标签中
是否可以使用javascript 测试下颌是打开还是关闭?
答案 0 :(得分:2)
我认为您误解了屏幕阅读器(SR)应该如何工作,您不需要将#textContent
放在标签顺序中。
如果SR用户正在浏览,他们可能会使用箭头键读取,他们将按源代码顺序读取所有非隐藏内容(#textContent,第1项,第2项)。这是标准的行为并且很有用,如果除了你可以选择的东西之外它不能阅读内容,它就不会是一个读者。
role=application
奇怪地放置,因为该div不包含任何表单控件,并且可能会阻止某些屏幕阅读器阅读#textContent
。 Application是一个区域,应该包含一组表单控件或交互式小部件。当在标记为application
的容器内时,页面应该处理按键操作。
如果用户正在填写表单,则SR的行为会更符合您的期望,除非标记为#textContent
,否则他们会跳过<label>
,您使用{{1他们使用箭头键。
最后,没有一种可靠的方法来检测网络上的辅助技术,there are privacy concerns采用这种方法。这可能永远不可能,而且当你考虑到并非每个残疾人都使用SR时,你会发现你最好建立一个可访问的页面/应用程序而不是黑客。