2014-01-19 2 views
2

Есть ли какой-либо способ в javascript, с помощью которого мы можем контролировать, сколько будет прокручиваться документ (с точки зрения пикселя) при нажатии стрелки вверх/вниз на клавиатуре?Управление скоростью прокрутки документа по стрелке вверх/вниз

+0

попробуйте google mate ... результат первого поиска ::: http://plugins.learningjquery.com/smooth-scroll/ – jycr753

+0

@ jycr753 Как я думаю, это отдельный плагин. есть какой-либо встроенный javascript или jquery метод –

+0

не то, что я не могу думать о своей голове, +1, так как не очень хочу знать – jycr753

ответ

2

Да. Просто добавьте обработчик события в событие нажатия клавиши, а затем проверьте, нажата ли клавиша «вверх» или «вниз», и если сфокусированным элементом является тело через document.activeElement. Это было бы использовать такую ​​функцию:

$(document).keydown(function(e) { 
    var n = 100; //Enter the amount of px you want to scroll here 
    if (e.which == 38 && document.activeElement == document.body) { 
     e.preventDefault(); 
     document.body.scrollTop -= n; 
    } 
    if (e.which == 40 && document.activeElement == document.body) { 
     e.preventDefault(); 
     document.body.scrollTop += n; 
    } 
}); 

Это изменяет количество пикселей прокручиваться на введенную сумму в строке 2 этого сценария. В этом случае это будет 100 пикселей.

+0

, но это будет работать только при прокрутке с помощью клавиатуры, а теперь в днях почти никто этого не делает. .: S – jycr753

+1

Цитировать OP: «... при нажатии стрелки вверх/вниз на клавиатуре». Именно это и требовал ОП. – Joeytje50

Смежные вопросы