C3.30.1Long-press text selection versus menu设计研究

长按选中文本与长按呼出菜单的起始动作相同

别名: 长按选词 · 上下文菜单冲突 · press-and-hold text

概念解释

在一段可编辑或可选择的文字上按住,系统可能进入选词,也可能弹出上下文菜单(拷贝、分享、翻译)。两个结果共用“静止超过时长”这一个起始动作。冲突的位点是文本命中测试之后、时长到期那一帧,不是泛泛的手势竞争,也不是选区手柄与滚动的争夺。

机制

平台给文字层的长按绑定了选择:到期时放置光标、选中最近的词、弹出放大镜。应用或 Web 又常在同一节点监听长按菜单。谁先 preventDefault、谁的识别器失败依赖写在前,决定用户看到的是蓝色选区还是一张菜单。菜单若先赢,选词通道被堵;选词若先赢,菜单要等第二次长按或等选区工具条。文字节点上的长按因此不是“额外语义”,而是两条产品线抢同一时钟。

怎么研究

在纯文本、链接、已有自定义菜单的气泡上做长按,记录先出现的是选区、系统菜单还是应用菜单。自变量:是否 user-select、是否挂了自定义长按。因变量:用户口头目标(“我要拷贝这个词” vs “我要分享整卡”)与实际结果的匹配。不要在按钮上测——按钮没有选词通道。

边界

不可选择的标签文字(user-select: none)只剩菜单。已经处于编辑态的输入框里,长按几乎总是选词,菜单后置到工具条,冲突下降。空白段落长按可能是插入光标而不是选词。系统级“轻点即可弹出菜单”的替代指针模式会撤掉这条时长冲突。

怎么落地

  • 在可选文字上,长按默认交给选词;把卡片级分享放进显式按钮或选区出现后的工具条,不要和选词抢时钟。
  • 链接与纯文本分开命中:链接触发预览/菜单,旁边的字触发选词。
  • 请人“拷贝这句话里的一个词”和“分享整张卡片”各做一遍,两者不应落到同一视觉结果。

延伸

  • 同组C3.30.2 拖动选区手柄与页面滚动共用触摸移动,需要手柄命中优先 · C3.30.3 双击选词与双击缩放在文本类内容中语义互斥,需按上下文关闭其一 · C3.30.4 文本选择态激活期间,其余手势应暂时让位于选区操作
  • 相邻C3.03 长按 · C3.19 手势冲突与消歧
  • 站内检索text selection · context menu · long-press conflict

同组卡片

快捷操作

分享

分享当前页面

ios_share

https://hci.top/zh/handbook/C3.30.1