我想让一个网站在按下左箭头时向上滚动,在按下右箭头时向下滚动。
我正在尝试这个:
$("body").keydown(function(e){
console.log( e.which );
// left arrow
if ((e.keyCode || e.which) == 37)
{
e.keyCode = 38;
e.which = 38;
$("body").trigger( e );
}
// right arrow
if ((e.keyCode || e.which) == 39)
{
e.keyCode = 40;
e.which = 40;
$("body").trigger( e );
}
});
但是不能正常工作,你能给我指出正确的方向吗?
尝试控制滚动,而不是尝试触发向上和向下的箭头。见下文,
下面的代码实际上是按页滚动,将$(window).height()
更改为一个固定的理想值。(演示: http://jsfiddle.net/v5DZ9/1/)
//This is for page scroll. Use a reduced height instead of $(window).height()
//for controlled scroll.
$(document).keyup(function (e) {
if (e.which == 39) {
window.scrollTo(0, $(window).height() + $(document).scrollTop());
} else if (e.which == 37) {
window.scrollTo(0, $(document).scrollTop() - $(window).height());
}
});
演示:http://jsfiddle.net/v5DZ9/
注意:请谨慎使用,此代码未经测试