E4.10.1modality as flow interruption设计研究

模态阻断主流程,只用于必须响应的事项

别名: 模态阻断 · 必须响应 · 对话框打断 · modal interruption

概念解释

模态对话框把主界面锁住,直到这份对话被回答或取消。阻断主流程(modality as flow interruption)是它唯一正当的理由:接下来的事若不先决断,主任务不能、也不该继续——未保存就离开、权限不足、破坏性确认。预览、筛选、帮助、次要设置不是必须响应的事项,用模态只是在把人关进一个本可并行的面板里。模态不管焦点怎么关、键盘怎么退,先问的是该不该把主流程停掉。

机制

人一次只走一条任务路径。模态用遮罩和不可点的主表面切断那条路径,强迫工作记忆改挂到对话框上的问题上。这个问题若真是继续操作的前提,切断是在防止无效后续(对着无权限的页乱点、把未保存的编辑走丢)。问题若只是「顺便看看」,切断就是抢任务:回来之后要重建主路径的位置、选择和未完成的思考。模态还有社会性的急迫感,被频繁使用会贬值,真需要阻断时人也习惯性点掉。因此「必须响应」不是语气强硬,而是逻辑上的前置条件——主表面在这个问题被回答之前,继续操作没有合法下一步。

怎么研究

把同一份内容分别做成模态、非模态侧栏、页内区块,插入到正在进行的主任务中。记录主任务中断时长、恢复后的错误、对话框被不读就关掉的比例。自变量:内容是否真是后续步骤的前提、出现时机(用户主动 / 系统弹出)。因变量:完成主任务的时间、被丢弃的中间状态。系统弹出且非前置的模态,不读关闭率应最高。

边界

法律同意、支付确认这类外部强制的决策是必须响应,即使用户觉得烦。后台完成的成功提示不是,它不阻断任何下一步。全屏沉浸编辑(画布、代码)有时用模态壳来隔离,但真正阻断的是编辑会话本身,不必再套一层「必须先答」的小对话框。多窗口桌面里,模态通常只锁所属窗口,其他窗口仍可操作,阻断范围是应用而不是整台机器;不要把这种窗口级模态理解成「什么都没打断」。

怎么落地

  • 先写下一句:若不回答,主表面的合法下一步是什么。若仍有合法下一步,就不要用模态。
  • 把预览、筛选、说明放到不锁主表面的面板或页内,把模态留给不可逆、权限和离开保护。
  • 能延后到用户主动打开的决策,不要在加载或空闲时弹出。
  • 验证:在用户做到一半时弹出候选对话框,看有多少人立刻关掉并抱怨打断。这类候选不该是模态。

延伸

  • 同组E4.10.2 模态需要焦点捕获与关闭后归还 · E4.10.3 模态内不应再弹模态 · E4.10.4 模态必须有键盘可达的关闭方式
  • 相邻E4.11 非模态面板 · E6.05 确认对话框
  • 站内检索modal dialog · flow interruption · must respond

同组卡片

快捷操作

分享

分享当前页面

ios_share

https://hci.top/zh/handbook/E4.10.1