如何将箭头绑定到"向上滚动"向下箭头指向"向下滚动"在jQuery或Javascript?

时间:2017-09-01 20:33:39

标签: javascript jquery

如何绑定向上箭头(或任何其他键)来执行与以jQuery或Javascript编程方式滚动相同的工作?

我使用此代码来检测up&向下箭头点击:

$(document).keydown(function(e) {
    switch(e.which) {
        case 38: // up
        console.log("up");

        break;

        case 40: // down
        console.log("down");
        break;

        default: return; // exit this handler for other keys
    }
    e.preventDefault(); // prevent the default action (scroll / move caret)
});

因此,当我在这种情况下单击向下箭头时,它应该调用"鼠标向下滚动"。

原因:我可以在我的网站上的弹出式模式中滚动内容,在移动设备上向上和向下滑动,并使用鼠标滚动。如果您有笔记本电脑而没有鼠标怎么办?向上/向下箭头不起作用......

1 个答案:

答案 0 :(得分:1)

我相信箭头键应该已经可以用于滚动(无论如何它都适用于Stack Overflow!),但如果它没有,我相信" scrollTo"方法可以为你工作:



var startingY = 0;

$(document).keydown(function(e) {
    switch(e.which) {
        case 38:
        startingY -= 20;
        window.scrollTo(0, startingY);
        
        break;

        case 40: 
        startingY += 20;
        window.scrollTo(0, startingY);
        
        break;

        default: return;
    }
    e.preventDefault();
});

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div style="height:5000px"></div>
&#13;
&#13;
&#13;