如何在浏览器中找到鼠标位置?
我知道e.pageX , e.pageY
,但我想知道鼠标是上升还是下降以及它是多少(每时每刻)?但我找不到存储最后一个(pageX,pageY)的方法来将它与new(pageX,pageY)进行比较!
我试图做的事情:
我有一张跟随鼠标的图片。我想知道鼠标上升或下降多少所以我可以改变图片大小(如果鼠标上升5像素,我的图片宽度将改变+10像素,如果鼠标下降5像素,我的图片宽度将是-10个像素)。
答案 0 :(得分:0)
您可以使用 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;
}
这将帮助您检测鼠标移动的方向