使您的单页应用程序与屏幕阅读器一起使用

作者: Monica Porter
创建日期: 13 行进 2021
更新日期: 15 可能 2024
Anonim
Windows 10 超好用的程序,免费且功能强大,这10款APP简直好用到爆炸! | 零度解说
视频: Windows 10 超好用的程序,免费且功能强大,这10款APP简直好用到爆炸! | 零度解说

单页应用程序在传达视图更改时提出了巨大的可访问性挑战。如果不刷新页面,屏幕阅读器将无法获取这些重要的UI更改,从而使视力受损的用户感到困惑和不知所措。

一种解决方案是创建基于页面标题的消息,并利用ARIA实时区域通过有用的消息显式宣布已加载新视图。首先创建一个在更新viewContent时调用的函数。 AngularJS为此提供了一个$ viewContentLoaded事件。在控制器代码中,侦听事件并调用一个函数(在CoffeeScript中):

app.controller“ PageController”,($ scope,$ location,$ http)-> $ scope。$ on“ $ viewContentLoaded”上,announce_view_loaded

在announce_view_loaded函数中,更新页面标题并宣布消息。虽然单页面框架不会自动更新页面标题,但保持页面标题与当前视图同步可以提高用户对视图的理解。


一种方法是在视图中的某处使用data属性存储视图标题:

document.title = $('[data-viewtitle]')。data‘viewtitle’

现在,使用更新后的页面标题创建一条消息,并将其宣布:

$ .announce(document.title +’,查看已加载’)

$ .announce()是一个jQuery函数,它使用单个不可见的实时区域来声明内容。与实时区域的临时使用相比,此方法有助于简化代码和调试工作。但是,有一些最佳实践要记住。

首先,在页面中创建一个“播音员”直播区域,以使用aria-live =“ polite | assertive”宣布内容。请勿使用任何其他实时区域,包括实时区域角色(例如role =“ alert | timer | log”)。实时区域示例:

div aria-live =“ polite” id =“ announcer”>(在此处添加或更新的文本将被宣布)/ div>

其次,在更新内容后立即清除活动区域的内容。这样可以防止用户绊倒旧消息。


最后,与任何可访问性技术一样,明智地使用$ .announce()。它仅应用于传达重要的UI更新。

:帕特里克·福克斯(Patrick Fox)

帕特里克·福克斯(Patrick Fox)是位于奥斯丁的Razorfish的Web UI技术总监。 本文最初出现在网络杂志的第271期。

喜欢这个吗?阅读这些!

  • 设计师数字无障碍指南
  • 最好的免费脚本字体
  • 免费涂鸦字体选择
迷人的文章
PS5重新库存新闻:这些零售商的库存迫在眉睫
阅读更多

PS5重新库存新闻:这些零售商的库存迫在眉睫

跳到: 购买P 5:快速链接 购买P 5:美国 购买P 5:英国 P 5配件 P 5一目了然 P 5或P 5数字版? P 5补货新闻跳转到适合您的部分...01.购买P 5:快速链接 02.最新P 5补货:美国 03.最新P 5补货:英国 04.购买P 5配件 05.更多P 5细节英国更新: 本周从英国传出的最新消息显示,Game和亚马逊英国都应该准备好从5月10日至21日之间下跌股票。您已经可...
着眼于设计:评论
阅读更多

着眼于设计:评论

认真的思想和精美的礼物。对设计感兴趣的任何人的必读材料。 内容丰富 出色的写作 主题问题精彩执行 大字号命中和遗漏 一些较长的文章将受到欢迎 避免了当前出现的过大,格式令人震惊的宏伟趋势,《 Eye on De ign》杂志的首期发行采用了精美紧凑的A4子格式。从灵感的模切封面的(字面意义)惊人的美感,到160页透明的版面,再到精彩的主题,这种首次亮相散发着宁静的自信和自信的氛围。Eye On D...
您不知道可以使用ZBrush进行的10件事
阅读更多

您不知道可以使用ZBrush进行的10件事

作为数字雕刻的行业标准,ZBru h拥有足够灵活的工具集,可让用户选择最适合他们的3D艺术工作流程。有这么多的可用选项,很容易会错过使用较少或较旧的功能,这些功能对于特定情况可能是完美的。接下来是您可能了解或可能不知道的有关ZBru h的10件事,主要针对初学者和中级用户-但是根据您选择的工作流程,可能有一些古怪的用户对ZBru h有用。尽管Quick ketch模式可能更适合粗略构思,但ZBru...