我试图从100计数到按键盘按钮时按1递增/递减计数。我目前正在使用键盘上的键8和2,它们分别对应于104和98的数字。

目前,我正在使用的代码会递减计数,但无法按104次按键递增计数。

我想念什么。



var keyY = 100;

document.addEventListener('keydown', function(event){
  var keyPressed = event.keyCode;
  switch(keyPressed){
    case 104:
      keyY = keyY + 1;
    case 98:
      keyY = keyY - 1;
  }
  console.log('key pressed: ' + keyPressed);
  console.log('keyX = ' + keyY);
});

<html>
  <head>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
  </head>
  <body>
      <script src="index.js"></script>
  </body>
</html>

最佳答案

您错过了休息时间,这很重要。


  与每个case标签关联的可选break语句可确保一旦执行匹配的语句,程序就退出switch并在switch之后的语句处继续执行。如果省略break,程序将在switch语句的下一个语句处继续执行。


来自here

var keyY = 100;

document.addEventListener('keydown', function(event){
  var keyPressed = event.keyCode;
  switch(keyPressed){
    case 104:
      keyY++;
    break;
    case 98:
      keyY--;
    break;
  }
  console.log('key pressed: ' + keyPressed);
  console.log('keyX = ' + keyY);
});


编辑:
使用keyY++;代替keyY = keyY + 1;keyY--;代替keyY = keyY - 1;

09-07 20:31