Вы можете просмотреть сайт по адресу www.highdwellercreative.com / colife .Этот сайт основан на концепции, что город будет расти по мере роста компании, и мы хотели другого ощущения, чем прокрутка с предоставленными полосами прокрутки.Я работал над стилем навигации клавиатуры, который состоит из четырех стрелок (вверх, вниз, влево, вправо).
В настоящее время я использую функцию setInterval (), чтобы зациклить плагин scrollTo для mousedown () и функцию clearInterval () для завершения цикла в mouseup ().
Я также установил интервал повторения в 1 миллисекунду для достижения плавной прокрутки.Я включил код, который заставляет работать то, чего я достиг до сих пор, но он все еще немного груб, особенно в Firefox 4. До сих пор это работает во всех браузерах, включая IE, но он может быть более плавным, и я впотеря того, как сделать это.Также, если вы нажмете одну из кнопок навигации и сразу же нажмете на нее правой кнопкой мыши, страница застрянет, прокручиваясь в этом направлении.Любая помощь в том, как улучшить это, будет принята с благодарностью.
var rightId;
$('span#right').mousedown(function() {
rightId = setInterval(function(){$.scrollTo('+=5px', {axis:'x'})}, 1);
}).mouseup(function() {
clearInterval(rightId);
});
var leftId;
$('span#left').mousedown(function() {
leftId = setInterval(function(){$.scrollTo('-=5px', {axis:'x'})}, 1);
}).mouseup(function() {
clearInterval(leftId);
});
var upId;
$('span#up').mousedown(function() {
upId = setInterval(function(){$.scrollTo('-=5px', {axis:'y'})}, 1);
}).mouseup(function() {
clearInterval(upId);
});
var downId;
$('span#down').mousedown(function() {
downId = setInterval(function(){$.scrollTo('+=5px', {axis:'y'})}, 1);
}).mouseup(function() {
clearInterval(downId);
});