我想在网页中检测用户通过拖动选中文本的情况。然而,在Windows操作系统中,有一种我称之为“双击拖动”的场景(如果已有更好的名称,请见谅),我无法找出如何检测它。具体步骤如下:
- 按下鼠标按钮
- 快速释放鼠标按钮
- 再次快速按下鼠标按钮
- 按住鼠标按钮并拖动
这会导致拖动选择整个单词。从用户角度来看,这是非常有用的技巧。
我的目标是区分双击拖动和先单击再拖动两种情况。所以,当我到达第2步时,我会得到一个点击事件,但我不想立刻将其视为点击事件;我要观察他们是否将立即进入第3步。
据推测,Windows系统基于时间和鼠标在第2步和第3步之间移动的距离来检测此操作,但我不知道它使用的参数,因此无法复制Windows系统的逻辑。请注意,即使鼠标在第2步和第3步之间根本没有移动,我仍会收到mousemove事件。
我意识到我应该设计适合触摸的、设备中立的界面。我也有意支持其他设备,但这是一个面向Windows电脑用户的企业应用程序,因此如果可能的话,我希望优化此情况。