P5.js: 如何知道一个键是否不再被按下?
P5.js: How to know if a key is no longer pressed?
如何知道密钥是否已释放?这个问题已经为 C# 编码人员回答,但我不使用 C#。
function keyPressed() {
if (keyIsDown(ENTER)){
player.up();
}
}
this.up = function() {
if (this.y == 350){
if (keyIsDown(ENTER)){
this.velocity -= this.gravity*15;
}
else{
this.velocity += this.gravity*20000;
}
}
}
此代码似乎不起作用。 (不要介意我使用的整数。)
按下某个键时,将调用一次 keyPressed
事件。
当一个键被释放时, keyReleased
事件被调用一次。
变量 keyCode
告诉您按下或释放了哪个键。
keyIsDown
函数可用于检查特定键当前是否按下,即按下。
注意keyPressed
和keyReleased
不会在按住某个键时连续调用:
function draw() {}
function keyPressed(){
if (keyCode === ENTER){
console.log("Enter key pressed");
}
return false; // prevent any default behavior
}
function keyReleased(){
if (keyCode === ENTER){
console.log("Enter key released");
}
return false; // prevent any default behavior
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/p5.js/0.7.3/p5.min.js"></script>
如果你想连续检查和处理一个键的状态,那么你可以在draw
函数中做到这一点,通过检查keyIsDown
:
function draw() {
.....
if ( keyIsDown(ENTER) ) {
this.velocity -= this.gravity*15;
} else {
this.velocity += this.gravity*20000;
}
.....
}
如果按住 ENTER 键,这个简单的例子会改变 canvas 的颜色(当然焦点必须在 canvas 上):
function draw() {
if ( keyIsDown(ENTER) )
background(255,0,0)
else
background(0,0,255)
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/p5.js/0.7.3/p5.min.js"></script>
您可以使用以下代码:
$(document).keyup(function(){
console.log('key up');
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
记得加jquery!
如何知道密钥是否已释放?这个问题已经为 C# 编码人员回答,但我不使用 C#。
function keyPressed() {
if (keyIsDown(ENTER)){
player.up();
}
}
this.up = function() {
if (this.y == 350){
if (keyIsDown(ENTER)){
this.velocity -= this.gravity*15;
}
else{
this.velocity += this.gravity*20000;
}
}
}
此代码似乎不起作用。 (不要介意我使用的整数。)
按下某个键时,将调用一次 keyPressed
事件。
当一个键被释放时, keyReleased
事件被调用一次。
变量 keyCode
告诉您按下或释放了哪个键。
keyIsDown
函数可用于检查特定键当前是否按下,即按下。
注意keyPressed
和keyReleased
不会在按住某个键时连续调用:
function draw() {}
function keyPressed(){
if (keyCode === ENTER){
console.log("Enter key pressed");
}
return false; // prevent any default behavior
}
function keyReleased(){
if (keyCode === ENTER){
console.log("Enter key released");
}
return false; // prevent any default behavior
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/p5.js/0.7.3/p5.min.js"></script>
如果你想连续检查和处理一个键的状态,那么你可以在draw
函数中做到这一点,通过检查keyIsDown
:
function draw() {
.....
if ( keyIsDown(ENTER) ) {
this.velocity -= this.gravity*15;
} else {
this.velocity += this.gravity*20000;
}
.....
}
如果按住 ENTER 键,这个简单的例子会改变 canvas 的颜色(当然焦点必须在 canvas 上):
function draw() {
if ( keyIsDown(ENTER) )
background(255,0,0)
else
background(0,0,255)
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/p5.js/0.7.3/p5.min.js"></script>
您可以使用以下代码:
$(document).keyup(function(){
console.log('key up');
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>