Javascript 拖动';n';丢弃算法

Javascript 拖动';n';丢弃算法,javascript,Javascript,这描述了一种拖放算法 只看第一段代码(本文不断改进),它说我们在document.addEventListener(“mousemove”,onMouseMove)中使用document很重要 这是因为如果我们使用ball,有可能在mousemove有机会再次执行之前将光标移动得如此之快,以至于光标可能会离开球的长方体模型?我们不会将鼠标移到球上,这样鼠标移动就不会重新启动 这是因为如果我们使用ball,我们可能会将光标移动得如此之快,以至于光标可能会在mousemove再次执行之前离开球的长方

这描述了一种拖放算法

只看第一段代码(本文不断改进),它说我们在
document.addEventListener(“mousemove”,onMouseMove)中使用
document
很重要

这是因为如果我们使用
ball
,有可能在
mousemove
有机会再次执行之前将光标移动得如此之快,以至于光标可能会离开球的长方体模型?我们不会将鼠标移到
球上
,这样
鼠标移动
就不会重新启动

这是因为如果我们使用ball,我们可能会将光标移动得如此之快,以至于光标可能会在mousemove再次执行之前离开球的长方体模型

当拖动点也是对象的顶行像素时,如果向上拖动对象,则会发生这种情况

如果您从其中心拖动较大的对象,并且您的计算机有一个具有高轮询率和高显示刷新率的鼠标,并且浏览器能够快速处理操作系统提供的输入事件,那么这种情况就不太可能发生-因此,如果您是使用高端游戏机(带有1000Hz USB鼠标和120Hz+显示器)的前端开发人员与在30Hz显示器上使用100Hz鼠标相比,可能没有注意到这个问题(这是一件事:许多人在HDMI 1.x上运行4K显示器,HDMI 1.x只能在30Hz下运行4K)


另一种情况是,当用户在绝对模式(Wacom称为“笔模式”)而不是相对模式(Wacom称为“鼠标模式”)下使用绝对指向设备,如触摸屏或图形平板电脑时,如果用户仅通过用手指轻击目标位置将对象“拖动”到屏幕上的其他位置(或通过在检测区域外垂直移动触针)然后只有一个
mousemove
事件根本不会被
ball
捕获。

“这并不意味着你认为它意味着什么。”戴,我同意,这是网站上使用的术语。@ DA:你的定义是什么?我不认为身份函数的同态是算法。我喜欢图形平板电脑的要点——非常有趣!(在100K:D的好运气)