1

是否有一种简单的方法可以区分拖动操作的开始和 HTML5 画布上选择操作的开始?

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

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

4

1 回答 1

3

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

  • 鼠标按下后跟随鼠标移动是拖动(如果移动大于某个阈值,则允许在单击时进行人体运动)
  • 如果时间跨度太大而无法双击,则鼠标按下然后鼠标向上是单击。
  • 如果向下/向上/向下/向上落在双击阈值内,则鼠标向下是双击。

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

于 2013-07-08T21:24:40.697 回答