Существует плагин, написанный давно: http://flesler.blogspot.com/2007/10/jqueryscrollto.html, который позволяет вам делать то, что вы хотите с JavaScript: http://demos.flesler.com/jquery/scrollTo/
Это краткое описание того, что вы могли бы сделать с этимПлагин:
(function () {
// find a current slide by whatever way you want,
// i.e. first slide or one that has some class or something...
var container = $('.container'),
currentSlide = container.find('.slide:first');
$(document).bind('keydown', function(e) {
var code = e.keyCode || e.which;
// 37 – left arrow
// 39 - right arrow
// 40 - down arrow
// 38 - up arrow
if ( code === 37 || code === 39 || code === 38 || code === 40 ) {
e.preventDefault();
switch ( code ) {
case 37 :
container.scrollTo ( currentSlide.prev(); );
break;
case 39 :
container.scrollTo ( currentSlide.next(); );
break;
case 38 :
container.scrollTo ( // implement finding one that is above );
break;
case 40 :
container.scrollTo ( // implement findign one that is below );
break;
}
});
} ());
Обратите внимание, что ваш контейнер должен иметь overflow:hidden
и размеры, установленные на нем из CSS (или, конечно, вы можете сделать это из JS, если хотите).Вы можете найти все требования на странице плагинов.