#javascript #jquery #html #user-interface
#javascript #jquery #HTML #пользовательский интерфейс
Вопрос:
Если вы создаете игру или интерактивный веб-сайт и хотите использовать клавиши со стрелками в качестве функции страницы. (например, перемещение чего-либо на экране)
Можно ли отключить прокрутку страницы с помощью клавиш со стрелками?
Ответ №1:
$(document).ready(function() {
$(document).keydown(function(Event) {
if(Event.which == 38 || Event.which == 40) {
Event.preventDefault();
// Do whatever you want
}
});
});
Ответ №2:
Поскольку вы отметили jQuery в своем вопросе, я предоставлю решение jQuery.
По сути, вам нужно захватить используемый ключ, а затем использовать preventDefault()
метод для события. Это остановит прокрутку браузера при нажатии клавиш со стрелками. Вот jsFiddle, показывающий, что он работает: http://jsfiddle.net/KMeGc /
И вот код jQuery для вашей справки:
$(document).keydown(function(e) {
var key = e.keyCode;
if(key == 37 || key == 38 || key == 39 || key == 40)
e.preventDefault();
switch(key)
{
case 37:
// Code to run for left arrow key here...
break;
case 38:
// Code to run for up arrow key here...
break;
case 39:
// Code to run for right arrow key here...
break;
case 40:
// Code to run for down arrow key here...
break;
}
});
Ответ №3:
$(window).keydown(function(ev){
// check the arrow keycodes here
ev.preventDefault();
});