Javascript requestanimationframe鼠标速度

Javascript requestanimationframe鼠标速度,javascript,physics,Javascript,Physics,我想在使用requestAnimationFrame时精确测量鼠标移动的速度。这可能吗?我不确定这是否可能,因为requestAnimationFrame的帧速率不是常数 HTML: JS: 您始终可以使用Date.now()获取MSF中的当前时间戳。rAF回调的唯一参数是一个高精度时间戳。 <canvas id="demo" width="400" height="400"></canvas> <p id="output">Velocity: </p

我想在使用requestAnimationFrame时精确测量鼠标移动的速度。这可能吗?我不确定这是否可能,因为requestAnimationFrame的帧速率不是常数

HTML:

JS:


您始终可以使用
Date.now()
获取MSF中的当前时间戳。rAF回调的唯一参数是一个高精度时间戳。
<canvas id="demo" width="400" height="400"></canvas>
<p id="output">Velocity: </p>
* {
  margin: 0px;
  cursor: none;
}

#demo {
  border: 1px solid #000;
}
var canvas = document.getElementById("demo");
var output = document.getElementById("output");
var context = canvas.getContext("2d");
var x = 0;
var y = 0;
var velocity = 0;
var radius = 20;

function draw() {
    context.fillStyle = 'red';
    context.beginPath();
    context.arc(x, y, radius, 0, 2 * Math.PI);
    context.fill();
}

document.addEventListener('mousemove', function(e) {
    x = e.clientX;
    y = e.clientY;
});

function loop() {
    context.clearRect(0, 0, 400, 400);
    draw();
  output.innerHTML = "Velocity: " + velocity;
    requestAnimationFrame(loop);
}
    requestAnimationFrame(loop);