2015-02-20 2 views
0

Я обрабатываю keydown & ключевое событие с использованием стандартных методов jquery.Если нажата клавиша в течение нескольких секунд &, мы отпускаем ключ через некоторое время, после чего keydown продолжает стрелять даже после его выпуска. Ключ запускается через довольно долгое время, или я могу сказать, когда он заканчивается всеми пиратскими атаками.Key down продолжает стрелять даже после отпускания клавиши

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

Вот код

$(document).on('keyup', function (e) { 
     if (isCrossHairClicked) 
     { 
      switch (e.keyCode) { 
       case 37: 
         alert('hwaccel'); 
        break; 
       case 39: 
         alert('hwaccel'); 
        break; 
       default: 
        break; 
       } 
     } 
    }); 

$(document).on('keydown', function (e) { 

     if (isCrossHairClicked) 
     { 


      switch (e.keyCode) { 
       case 37: 
        console.error('37 down'); 
        break; 
       case 39: 
        console.error('39 down'); 
        break; 
       default: 
        break; 
       } 
     } 
    }); 

Мои консольные журналы

"37 down" & "39 down" 

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

Заранее спасибо.

+0

.stop (true) в вашем javascript или jquery-коде. Если вы добавите свой код, это будет полезно. Но это решение –

+0

Я не вижу вашего «кода»! :) –

+0

@GopsAB вы имеете в виду, что я должен использовать event.stop (true) в обработчике keydown? –

ответ

0

Наконец-то я нашел ответ сам. Завершив e.stopPropagation(); в обработчике keydown, я сделал трюк.

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

  • Нет связанных вопросов^_^