ARIA的role="status"属性专为非中断性状态提示设计,它能在不干扰用户操作的前提下传递辅助信息。下文将详细解析其使用场景、实现要点及常见注意事项。

作为ARIA语义标记,role="status"默认采用"polite"礼貌级别,适合异步加载完成、表单保存成功等弱干扰场景。与之相对的role="alert"则属于"assertive"紧急级别,会强制中断当前语音播报。
为确保屏幕阅读器能正确捕获状态更新,相关元素必须置于全局可达位置。常见实现方式是将容器直接放在body开始或结束位置。
<div role="status" class="sr-only"></div>置于body首尾通过innerHTML或textContent更新内容即可触发播报,但需注意更新频率和浏览器兼容性差异。
const statusEl = document.querySelector('[role="status"]');
statusEl.textContent = '已保存';合理运用role="status"能显著提升无障碍体验,但需注意它应作为视觉反馈的补充而非替代。通过遵循本文规范,开发者可构建更友好的辅助技术支持环境。