0

我想在事件触发event.pageY时使用当前值。mousemove但似乎我的event.pageY价值没有更新。这是我的代码的一部分(它已经在mousemove事件的回调函数中):

 var deltaX = self.mouse.startX - event.pageX,
     deltaY = self.mouse.startY - event.pageY;
 if (self.mouse.endTime - self.mouse.startTime < 300){                  
                // Drag down
                console.log(event.pageY); // 1
                if(Math.abs(deltaX) < Math.abs(deltaY) && deltaY < 0){
                    console.log(event.pageY);  // 2
             ....

第一个console.log(event.pageY)会随着鼠标移动而自动更新,但第二个不会更新,似乎它保留了计算的值deltaYevent.pageY那么当鼠标在内部“if”中移动时,如何获得更新的值?

4

1 回答 1

1

event.pageY 不会自动更新,它是事件对象的属性,在事件触发时生成,因此它在事件处理程序中是常量。

于 2012-04-25T09:55:59.197 回答