E5.12.1submenu steering设计研究

子菜单的斜向移动是受限通道

别名: 子菜单通道 · steering law · 斜向进入

概念解释

打开带子项的菜单后,指针要从父项斜着走进子菜单的第一项。这条路不是开阔地,而是一条窄走廊:子菜单转向(submenu steering)受转向定律约束——通道越窄、越长,越容易在半路滑出父项而被关掉。失败看起来像「菜单太灵敏」,机制是斜向穿越时指针离开了仍算「在菜单里」的合法区域。

机制

父项是一条横条,子菜单从它右侧(或下方)展开。目标在子菜单里,起点在父项上,最短路径是对角线。对角线上的像素有很大一块既不属于父项也不属于子菜单,而属于菜单外的页面。指针一旦踩到这些像素,多数菜单会把整棵关掉。人于是被迫先水平移出父项、再垂直对准,走一条折线。折线更长,但安全。想抄近路的人会被走廊惩罚。

转向定律把这类任务的时间写成与路径长度和通道宽度相关:走廊越窄(父项很矮、父与子之间缝很大),越要降速,否则出界。把合法区域做成三角形——从父项指向子菜单的一片「仍算在内」的区——是在加宽走廊,而不是在改延迟。这和悬停打开的时间门闩不是一回事:即使立刻打开,斜向通道仍然在。

怎么研究

指向任务画从父项中心到子项中心的轨迹,记录出界关机次数、完成时间、以及实际走折线还是对角线。自变量是父项高度、父子间距、是否有三角形安全区。因变量符合转向定律的预期:加宽安全区应降低出界,而不是只改变打开延迟。

鼠标和触控板要分开。触控板的位移比鼠标更容易画出抖动的对角线,出界会更密。

边界

点击展开而不是悬停维持的菜单,指针可以离开再回来,走廊问题会减弱,但点进子项仍要穿过同一几何。触屏没有悬停走廊,子菜单通常改成新的一屏,这条机制不适用。子菜单若向下展开且与父项重叠出一块较大的共享区,对角线会短一些。极短的子菜单(一两项)走廊很短,失败少。把子菜单做成要绕过窗口边缘翻转时,走廊方向突变,转向模型要重算。

怎么落地

  • 在父项与子菜单之间保留一块仍算「在菜单内」的三角形或 overlapping 区,让对角线不立刻出界。
  • 加高父项的命中条,减小父子间隙;不要让子菜单离开父项一条明显的缝。
  • 不要只靠加长打开时间来掩盖走廊;延迟不修几何。
  • 验证:从父项中心沿直线快速滑向子项,菜单不应关。再让人重复十次,统计出界关机。失败集中在缝上就加宽安全区;失败集中在打开太慢,那是另一项。

延伸

  • 同组E5.12.2 悬停打开需要延迟以防误触 · E5.12.3 层级超过两层难以操作
  • 相邻E5.13 上下文菜单 · E5.03 侧边栏导航
  • 站内检索steering law · submenu · menu corridor

同组卡片

快捷操作

分享

分享当前页面

ios_share

https://hci.top/zh/handbook/E5.12.1