我正在尝试使用Jquery在自动收录器中实现自己的滚动,因为正常滚动在对抗动画时效果不佳。我需要检测鼠标移动的方向。我可以不断获取鼠标的当前位置,我需要做的是保存当前位置,然后将其保存以供下次检查。如何保存event.clientX
以进行下一步行动?
我正在使用的代码是JSFiddle中的第24-37行:
function track_mouse_pos(event) {
var direction = "right";
if(event.clientX < event.data.start_x){
direction = "left";
}
$('#start_mouse_tracker').html("( " + direction + " )");
$('#drag_tracker').html("( " + event.clientX + ", " + event.clientY + " )");
}
$("#controller").mousedown(function (event) {
var start_x = event.clientX;
var start_y = event.clientY;
$("#controller").on('mousemove', {start_x: start_x}, track_mouse_pos);
});
修改 值得注意的是,我已经尝试将值保存在JSFiddle中 我将此添加到if语句中,但它仍然没有解决问题,所以我想应该是的问题,我应该在哪里保存当前鼠标位置?它应该是一个全局变量还是我可以使用的mousemove事件中有什么东西?
var current_x = event.data.start_x
if(event.clientX < current_x){
direction = "left";
current_x = event.clientX;
}
else{
direction = "right";
current_x = event.clientX;
}