keyPressed功能仅为Chrome中的每个键触发一次

时间:2018-06-14 12:50:55

标签: javascript p5.js

我正在使用P5库,我想注册按键。当HTML文件在本地打开时,Chrome,Edge和Firefox上的所有内容都按预期运行。如果我尝试在github页面上托管它,它适用于Firefox和Edge,但遗憾的是不适用于Chrome。当keyPressed功能检测到按键时,我已经尝试写入控制台,每按一次键就会发生这种情况,但是它只注册一次箭头键,然后在按下按键后忽略它们。有没有人知道可能导致这种情况的原因。

function keyPressed(){
    if(keyCode === 37){
        MoveLeft();
    }
    if(keyCode === 38){
        MoveUp();   
    }
    if(keyCode === 39){
        MoveRight();    
    }
    if(keyCode === 40){
        MoveDown(); 
    }
    if(gameOver === true){
        ResetGame();
    }
    console.log('keyPressed');
    return false; 
}

1 个答案:

答案 0 :(得分:0)

var bg = "#333";
var gameover = false;
function draw() {
  background(bg);
}

function keyPressed(){
  if(gameover){return false;}
  if(keyCode === 32){
    bg = "#0000FF";
  }
  return false;
 }

function keyReleased(){
  bg = "#333";
}

请参见https://p5js.org/reference/#/p5/keyCode
使用http://keycode.info/