我没有从stackoverflow得到一个精确的解决方案/计算,所以我创建了一个问题
var timestamp = null;
var mY = 0;
$(document).mousemove(function(e) {
var now = Date.now();
currentmY = e.pageY;
mY = e.pageY;
timestamp = now;
});
字符串
我需要得到一个速度值当鼠标移动垂直Angular 。
https://jsfiddle.net/58tjr9o1/
2条答案
按热度按时间e4yzc0pl1#
速度就是距离除以所用的时间:
字符串
距离是
currentmY - mY
,而时间是now - timestamp
。所以最后,你得到:型
注意
* 1000
,因为时间戳是以毫秒为单位的,这里的速度是以 * 像素/秒 * 为单位的。请参阅this updated fiddle。
w7t8yxp52#
下面的代码将在id =“update-speed”的范围内不断更新鼠标的垂直移动速度。代码是自我解释和容易理解的,它只是保存当前位置,前一个位置,当前时间和前一个时间,然后使用这个公式计算速度(速度=(pos 2-pos 1)/(time 2-time 1))。
超文本标记语言
字符串
JS
型