我制作了一个小脚本,旨在输出鼠标移动的速度。我遇到的问题是,有时脚本会在数字中输出一个不准确的数字并将整个事情扔掉。同样,脚本并不总是在用户释放鼠标按钮时终止。为了解决第一个问题,我假设我可以将值放入一个数组中,然后确定异常值,但我希望这里有人可以告诉我我在做一些愚蠢的事情,并且有一种方法可以修复我的代码它更有效率。
JS:
var test_obj = {
mouse_coors: function(x2) {
$(document).on("mousemove", function(e) {
var x = e.clientX,
velocity = Math.abs(x-x2);
console.log(velocity);
$(document).off("mousemove");
setTimeout(function() {
x2 = e.clientX;
test_obj.mouse_coors(x2);
}, 100);
});
$(document).on("mouseup", function() {
$(document).off("mouseup").off("mousemove");
});
},
};
$(document).ready(function() {
$('#testbox').on("mousedown", function() {
test_obj.mouse_coors(0);
});
});
HTML:
JSfiddle:http: //jsfiddle.net/mkb2t/