javascript - 如何区分拖动开始和选择开始 HTML5-Canvas

标签 javascript css html html5-canvas

在 HTML5 Canvas 上是否有一种简单的方法来区分拖动操作的开始和选择操作的开始?

我已经为两者生成了代码,但都涉及使用 onmousedown 事件设置 bool 值,在触发 onmousemove 事件时处理信息(如果设置了 bool 值),然后将 bool 值设置回 false 并执行最终处理使用 onmouseup 事件。有没有更好的方法来完成其中任何一项?

感谢您抽出宝贵时间,希望我在尝试使用 Google(以及查看堆栈溢出)该主题时只是使用了错误的单词组合,如果我在搜索时错过了帖子/论坛,我深表歉意。

最佳答案

使用鼠标基元时,在触发后续事件之前,无法知道鼠标按下是单击、双击还是拖动的一部分。

  • 按下鼠标然后移动鼠标是拖动(如果移动大于某个阈值,以允许在单击时进行人体运动)
  • 如果时间跨度太大而不能成为双击,则按下鼠标后松开鼠标就是单击。
  • 如果向下/向上/向下/向上落在双击阈值内,则鼠标按下是双击。

拖动和矩形选择之间的区别(通常)基于按下按钮时鼠标位置下方是否存在对象。

关于javascript - 如何区分拖动开始和选择开始 HTML5-Canvas,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17536068/

相关文章:

javascript - 从中心将图像填充到 div 中

html - 在 svg/vml 或 Canvas 形状周围放置阴影

javascript - 动画 SVG 在移动设备上的帧速率不稳定

css - Worklight 忙指示器调整大小

javascript - react 数组映射中的设置值不起作用

jquery - 如何使图像的 x 和 y 翻转,就像带有句柄的 Jquery 可调整大小的 UI 一样......?

javascript - HTML 和 Javascript 更改尖括号 ( < > ) 内的内容

html - 在 jQuery Mobile 中保留文本输入值

javascript - 显示带有公共(public)组件的 Mat-dialog

javascript - JSON、JavaScript、错误的日语字符