我已经成功添加了按下键盘上的左/右键时滚动(左/右)的功能
$('body').keydown(function (e) {
if (e.keyCode == 37) { // left
$('html, body').stop().animate({
scrollLeft: "-=980"
}, 1000);
e.preventDefault();
}
else if (e.keyCode == 39) { // right
$('html, body').stop().animate({
scrollLeft: "+=980"
}, 1000);
e.preventDefault();
}
});
当用户只按左/右键一次时,效果非常好。当用户长按左/右键时,滚动效果会停止然后再次启动(只要按下该键)。
当用户长时间按向左/向右时,我希望滚动不会再次停止/开始。而是继续滚动,直到释放向左/向右按钮。
可能吗?
谢谢。
最佳答案
是的,我认为这是可能的。 尝试在onKeyDown事件中使用
setInterval()
每 200 毫秒左右调用一次滚动函数。
然后使用onKeyUp事件来停止该函数(使用标志或使用clearInterval())
祝你好运
关于jquery - 当用户按下键盘上的左/右键时继续滚动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14099341/