Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/476.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 每时每刻有多少鼠标上下移动_Javascript - Fatal编程技术网

Javascript 每时每刻有多少鼠标上下移动

Javascript 每时每刻有多少鼠标上下移动,javascript,Javascript,如何在浏览器中找到鼠标位置 我知道e.pageX,e.pageY,但我想知道鼠标是向上还是向下移动,以及(在每一时刻)移动了多少?但是我找不到一种方法来存储last(pageX,pageY)和new(pageX,pageY)进行比较 我想做的是: 我有一张跟在鼠标后面的照片。我想知道鼠标上升或下降的幅度,以便更改图片大小(如果鼠标上升5像素,我的图片宽度将更改+10像素,如果鼠标下降5像素,我的图片宽度将更改-10像素)。您可以使用mousemove事件。在鼠标移动时跟踪鼠标坐标 但是,您应该知

如何在浏览器中找到鼠标位置

我知道
e.pageX,e.pageY
,但我想知道鼠标是向上还是向下移动,以及(在每一时刻)移动了多少?但是我找不到一种方法来存储last(pageX,pageY)和new(pageX,pageY)进行比较

我想做的是:


我有一张跟在鼠标后面的照片。我想知道鼠标上升或下降的幅度,以便更改图片大小(如果鼠标上升5像素,我的图片宽度将更改+10像素,如果鼠标下降5像素,我的图片宽度将更改-10像素)。

您可以使用mousemove事件。在鼠标移动时跟踪鼠标坐标

但是,您应该知道mousemove事件将占用大量的处理时间,因为光标移动的每个像素都会触发该事件,所以请小心

在此类事件中触发一个非常简单和快速的函数是一个好主意

我希望这就是你想要的

例如:

element.onmousemove = function () {
   // do something simple
};
更新:

对于跟踪,下面是一个示例函数

//初始化函数外部的变量,使其保持其值

var x=0;
var y=0;

function trackMouse(e) {
   var evt = e || window.event;
   if (evt.clientX) { // grab the x-y pos if browser is IE
     var tempX = evt.clientX + document.body.scrollLeft;
     var tempY = evt.clientY + document.body.scrollTop;
   }
   else {  // grab the x-y pos.s if browser is else
     var tempX = evt.pageX;
     var tempY = evt.pageY;
   }  
   if (x > tempX){
      // the mouse is going left
   }else {
      // mouse is going right
   }
   x = tempX; // set new value
   if (y > tempY){
      // the mouse is going down
   }else {
      // mouse is going up
   }
   y = tempY;
}

这将帮助您检测鼠标移动的方向

谢谢,我使用了
document.onmousemove=myfunction。我在这个函数中遇到的最大问题是我问题的第二部分,我怎样才能知道鼠标上下移动以及移动了多少?这很好,我得到了我的答案,但是如果我想随时检查
trackMouse(e)
,这将花费大量的过程!