Mac Firefox滚轮事件触发延迟

时间:2018-04-12 10:27:23

标签: javascript macos firefox mousewheel dom-events

我正在使用wheel事件来滚动div元素。它在IE 11,Chrome,Windows Firefox中运行良好。但在mac firefox中,事件在解雇时被推迟。我需要仅通过wheel事件实现滚动功能。这是代码的原型

document.getElementById("container").addEventListener("wheel", function(event){
    var scrollAmtY = is_ff > 0 && event.deltaMode == 1 ? - PIXEL_PER_LINE * event.deltaY : -(event.deltaY > SCROLL_LIMIT ? SCROLL_LIMIT : event.deltaY < -SCROLL_LIMIT ? -SCROLL_LIMIT : event.deltaY);
    var scrollAmtX = is_ff > 0 && event.deltaMode == 1 ? - PIXEL_PER_LINE * event.deltaY : -(event.deltaX > SCROLL_LIMIT ? SCROLL_LIMIT : event.deltaX < -SCROLL_LIMIT ? -SCROLL_LIMIT : event.deltaX);
    detailVal.scrollTop(detailVal.scrollTop() - scrollAmtY);
    detailVal.scrollLeft(detailVal.scrollLeft() - scrollAmtX);
});

var is_ff是firefox检查变量,而mac deltaMode只是“0”。有什么建议吗?

1 个答案:

答案 0 :(得分:1)

发现问题,这个问题是由于前/后按钮的mac手势造成的。延迟是在没有前/后操作的情况下。如果有前/后操作,则执行该操作。