该技巧的目的是当错误输入发生时,通知辅助技术。当错误信息被插入到Live Region容器时,aria-live属性可以使辅助技术被告知错误信息被插入。aria-live区域中的内容将会被辅助技术自动朗读,而不需要聚焦文本所在区域;
可以直接使用Live Region属性的一些样例。
这个例子中role=alert相当于aria-live=assertive。
在该样例中,在加载出来页面的DOM中有一个空的错误消息容器元素,该元素aria-atomic=true
和一个aria-live
属性或alert
角色。错误容器必须在页面的DOM树中,这样大多数屏幕阅读器才能读出错误消息。aria-atomic=true
是让iOS上VOiceover在无效提交之后读出错误消息所必须的。
JQuery被用来在提交时测试输入区域是否为空并将错误消息插入到live region
区域。每一次提交的时候都会清楚先前的错误消息,并插入新的错误消息。
各读屏、各浏览器的支持效果
测试人: