资源 · 57

对话框和键盘:测试焦点路径

检查中断任务的界面中的打开、移动、关闭和上下文恢复。

已更新 · 3 min

本指南有助于实现的目标

  • 选择合适的组件
  • 放置易于理解的焦点
  • 允许关闭
  • 恢复上下文

快速检查

  • 是否需要模态框?
  • 打开时焦点落在哪里?
  • 背景是否真的静止?
  • 是否可以通过键盘关闭对话框?
  • 如果触发点消失,焦点会返回到哪里?

分步指南

  1. 1

    选择中断方式

    确定信息是否需要模态框,或者可以保留在页面中。 区分模态对话框、面板和菜单。 优先使用合适的原生元素并检查其行为;ARIA 角色不会自动创建交互。

    交付成果:组件选择及理由。

  2. 2

    名称和打开

    将易于访问的名称连接到可见的标题。 根据任务需要,将焦点放置在合适的位置:结构化内容的开头、有用的字段或安全的操作。 打开时,开头部分不应滚动到屏幕外。

    交付成果:已测试的打开方式。

  3. 3

    键盘导航

    根据 W3C 的模态对话框模式,Tab 和 Shift+Tab 键在内容内部保持有效,在内容外部无效。 验证可见的焦点、逻辑顺序以及嵌套控件中是否存在陷阱。

    交付成果:前进和后退导航。

  4. 4

    关闭和恢复

    提供可见的关闭方式和预期的 Esc 行为。 如果触发器不再存在,则将焦点返回到触发器或逻辑步骤。 提交后,用户应能找到更改的内容以及后续操作。

    交付成果:恢复焦点和上下文。

  5. 5

    测试错误和空间

    包含长消息、无效字段、移动键盘和缩放功能。 滚动不应永久隐藏操作或标题。 错误信息应清晰易懂且易于访问,且不会丢失已输入的值。

    交付成果:窄屏边缘情况。

  6. 6

    在页面中进行检查

    使用键盘和辅助技术测试集成组件,而不仅仅是在隔离的演示环境中。 检查重复打开和重复关闭后的焦点问题。 仅本地验收不足以获得 WCAG 认证。

    交付成果:验收记录和已知限制。

可重复使用的工作表

填写您已授权的观察结果。 这些字段是工作模板,而非观察结果。

字段待记录信息
开始触发、标题和初始焦点
旅程Tab、Shift+Tab、惰性背景和可见焦点
结束Esc、按钮和逻辑回车
限制测试缩放、长内容、错误和辅助功能

虚构示例

示例情境

示例:对话框确认删除行,其打开按钮消失。

决策及预期证据

确认后,焦点返回到下一个逻辑元素或列表标题,并显示结果和下一步操作。

区分机制

机制目的验证或限制
模态对话框中断有界任务惰性背景和包含焦点
非模态面板保持上下文可用连贯的焦点移动
页面部分显示持续信息通常更易于查阅

管理指标

指标衡量内容首要行动
完成键盘操作无需指针即可执行的任务修复阻塞
正确返回焦点关闭以恢复有用的上下文处理缺失的触发器
测试边缘状态缩放、错误和长内容文档遗漏

常见错误

  • 添加无惰性内容的 aria-modal 属性
  • 关闭后失去焦点
  • 在没有明确退出的情况下阻止 Esc 键
  • 仅测试鼠标 开启

常见问题解答

原生对话框是否足够?

它提供了有用的功能,但命名、初始焦点、内容、错误和集成仍需测试。

第一个按钮是否应该获得焦点?

不一定。 合适的焦点取决于内容和任务,尤其是在不可逆决策的情况下。

自动化能否验证流程?

它可以检测到一些缺陷,但理解、合理的顺序和恢复的上下文需要人工审核。

官方参考文献

参考文献支持该方法。 请根据您的实际情况调整检查;它们并非认证。 原始参考文献标题和源文档可能使用其他语言。

参考资料查阅日期 .