触发滚动事件没有e.pageX和e.pageY

时间:2014-02-24 17:24:39

标签: javascript jquery scroll mouseevent

$(document).scroll(function (e) {
    log("event:" + e.pageY + " - " + e.type);
});

e.pageYundefinede.typescroll

我需要从e获取鼠标坐标。但e.pageXe.pageYundefined

scroll不支持吗?

1 个答案:

答案 0 :(得分:0)

滚动事件不是鼠标事件。

您可以在mozilla中尝试mousewheel事件(DOMMouseScroll):

$(document).on('mousewheel', function (e) {
    console.log(e.originalEvent.pageX, e.originalEvent.pageY);
});

如果你真的需要scroll事件监听器,你可以这样做:

var mouse;
$(document).on('mousemove', function (e) {
    // cache mouse position
    mouse = {
        x: e.originalEvent.pageX,
        y: e.originalEvent.pageY
    };
});

$(document).scroll(function (e) {
    // read from cache
    console.log(mouse);
});