how can i track arrow keys in Chrome and IE?

后端 未结 7 1285
后悔当初
后悔当初 2020-12-06 01:26

Im using foloowing code to track key events

oEvent=window.event || oEvent;
    iKeyCode=oEvent.keyCode || oEvent.which;alert(iKeyCode);

its

相关标签:
7条回答
  • 2020-12-06 02:01

    Demo

    Try using the jquery library to do what you need and then call below. In the demo you can click in the input box and then start typing. It will alert you with the key code. You can bind that event listener to any element of your page. It doesn't have to just be an input.

    $(document).ready(function() { 
        KEY_CODES = {
          37: 'left',
          38: 'up',
          39: 'right',
          40: 'down'
        }
    
        KEY_STATUS = { keyDown:false };
        for (code in KEY_CODES) {
          KEY_STATUS[KEY_CODES[code]] = false;
        }
    
        $(window).keydown(function (e) {
    
          KEY_STATUS.keyDown = true;
    
          // perform functionality for keydown
          if (KEY_CODES[e.keyCode]) {
              e.preventDefault();
              alert('arrow');
              if(e.keyCode == 40)
              {
                  // Arrow Down 
              }
    
              else if(e.keyCode == 39)
              {
                  // Arrow Right    
              }
    
              else if(e.keyCode == 38)
              {
                  // Arrow Up    
              }
    
              else if(e.keyCode == 37)
              {
                  // Arrow Left    
              }
    
          }
    
        }).keyup(function (e) {
          KEY_STATUS.keyDown = false;
          if (KEY_CODES[e.keyCode]) {          
            e.preventDefault();
            KEY_STATUS[KEY_CODES[e.keyCode]] = false;
          }
        });
    
    });
    
    0 讨论(0)
提交回复
热议问题