JQuery переопределить функцию keydown вернуться к умолчанию - PullRequest
0 голосов
/ 28 сентября 2010

Я использую плагин jquery для контекстного меню jeegoo, который переопределяет клавиши со стрелками для навигации по меню.У меня есть поле ввода в меню, и когда в поле ввода не работают клавиши со стрелками влево и вправо.

Есть ли способ добавить исключение, чтобы, находясь в поле вводаклавиши со стрелками влево и вправо возвращаются к поведению по умолчанию?

Вот код для переопределения нажатия клавиши.

$(document).bind('keydown.jeegoocontext', function(e){
 switch(e.which)
 {
     case 38: //keyup
        **misc code**
         return false;
     case 39: //keyright
        **misc code**
         return false;
     case 40: //keydown
        **misc code**
        return false;
     case 37: //keyleft
        **misc code**
        return false;
     case 13: //enter
        **misc code**
        break;
     case 27: //escape
        **misc code**
         break;
     default:
         break;
 }
 }).bind('keyup.jeegoocontext', function(e){
 window.clearInterval(_global.keyUpDown);
 _global.keyUpDownStop = false;
 });

e.stopPropagation();

Ответы [ 2 ]

0 голосов
/ 28 сентября 2010

Просто убедитесь, что e.stopPropagation () не вызывается для элементов, для которых требуется поведение по умолчанию.

0 голосов
/ 28 сентября 2010

Разработчик плагина, который я использую, ответил мне решением переопределить элементы управления нажатий клавиш для поля ввода.

$(‘myInputField’).keydown(function(e){
    {switch(e.which){
         case 39: e.stopPropagation();return true;
         case 37: e.stopPropagation();return true;}});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...