【问题标题】:Javascript when holding down arrow keys?按住箭头键时的Javascript?
【发布时间】:2011-03-10 02:32:07
【问题描述】:

我有这个脚本来触发一些 javascript。但该脚本不支持按住箭头键。当我按住箭头键时,我怎样才能做到这一点。

document.onkeyup = KeyCheck;       
function KeyCheck()
{
    var KeyID = event.keyCode;

    switch(KeyID)
    {
      case 37:
      right('img'); document.getElementById('img').src = 'guyl.png';
      break;
      
      case 38:
      up('img');
      break

      case 39:
      left('img'); document.getElementById('img').src = 'guyr.png';
      break;

      case 40:
      down('img');
      break;   
     }
}

【问题讨论】:

    标签: javascript arrow-keys


    【解决方案1】:

    应该是:

    document.onkeydown = KeyCheck;
    

    onkeypress : 当按键被按下时调用 JavaScript 代码

    onkeydown : 当按键被按下(但尚未释放)时调用 JavaScript 代码

    onkeyup : 当一个键被按下后被释放时调用 JavaScript 代码。

    【讨论】:

      【解决方案2】:

      您只需要处理onkeydown 事件。

      【讨论】:

        【解决方案3】:
        1. 更正您的函数以接受事件 arg

          function KeyCheck(event) {
            var KeyID = event.keyCode;
            ...
          }
          
        2. 如果您想使用组合键,请改用 onkeypress 事件, 将键推入数组,看看是否有想要的组合。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2014-08-10
          • 1970-01-01
          • 1970-01-01
          • 2011-08-01
          • 2016-10-07
          • 1970-01-01
          相关资源
          最近更新 更多