如何使用本机滚动并使用jquery为其提供修复滚动量(以像素为单位)?

时间:2016-03-07 10:04:28

标签: javascript jquery html5 scroll scrollbar

我不想使用任何jquery插件。我想使用本机滚动条并使用jquery,以便我可以获得固定的scrollamount。 到目前为止,我需要使用jquery.mousewheel.min.js库在使用鼠标滚轮时给出一个固定的scrollamount,但是在拖动滚动条或单击滚动按钮时没有运气。 我得到了鼠标轮选项的代码:

function wheel($div, deltaY) {
var step = 30;
var pos = $div.scrollTop();
var nextPos = pos + (step * (-deltaY))
console.log("DelatY: " + deltaY + ", Step: " + step + ", nextPos: " + nextPos);
$div.scrollTop(nextPos);
}

$('#test').bind('mousewheel', function (event, delta, deltaX, deltaY) {
    if (delta > -2 && delta < 2) {
        wheel($(this), deltaY);
        event.preventDefault();
    }
    console.log(delta);
});

1 个答案:

答案 0 :(得分:0)

该事件未与控件绑定,请尝试以下

 $(document).ready(function()
    {
        $('#test').bind('mousewheel', function (event, delta, deltaX, deltaY) {
            if (delta > -2 && delta < 2) {
                wheel($(this), event.clientY);
                event.preventDefault();
            }
            console.log(delta);
        });
    });

以及参数 delta, deltaX, deltaY 值也会作为未定义传递,因此请为此提供值。