在 keyEvent 中,如何捕获键“*”?
In keyEvent, How can I catch the key " * "?
if(keyEvent.keyCode == 8){
$scope.erase();
}
else if(keyEvent.keyCode === 107){
console.log("+");
$scope.inputToCal('+')
}
else if(keyEvent.keyCode === 109){
console.log("-");
$scope.inputToCal('-')
}
else if(keyEvent.keyCode === 16){
console.log("*");
$scope.inputToCal('*')
}
}
else if(keyEvent.keyCode === 111){
console.log("/");
$scope.inputToCal('/')
}
我试图制作一个计算器来捕捉 "keydown"。
我能抓到这些键,"+","-","/"。
这些按键代码是“107”、“109”、“111”
但是,有一个问题。
我抓不到键“*”。
有什么办法可以解决这个问题吗?
或者,我是否必须定义新数组来捕获键 "Shift"(keyCode:16) 和 "8"(keyCode:56) ?
抱歉,我是 keyEvent 的新手。
我在等解决方案...
请帮帮我!!
您必须单独处理 shift 键按下。
function handleKeyDown(e) {
var shiftPressed=0;
var event = (e==null ? event:e);
shiftPressed=event.shiftKey;
if ((shiftPressed)&& (event.keyCode==56))
alert ("You pressed * key");
return true;
}
演示:http://jsfiddle.net/soxj0v54/1/
对于您的代码,它看起来像-
else if(keyEvent.keyCode === 56 && keyEvent.shiftKey){
console.log("*");
$scope.inputToCal('*')
}
if(keyEvent.keyCode == 8){
$scope.erase();
}
else if(keyEvent.keyCode === 107){
console.log("+");
$scope.inputToCal('+')
}
else if(keyEvent.keyCode === 109){
console.log("-");
$scope.inputToCal('-')
}
else if(keyEvent.keyCode === 16){
console.log("*");
$scope.inputToCal('*')
}
}
else if(keyEvent.keyCode === 111){
console.log("/");
$scope.inputToCal('/')
}
我试图制作一个计算器来捕捉 "keydown"。
我能抓到这些键,"+","-","/"。
这些按键代码是“107”、“109”、“111”
但是,有一个问题。
我抓不到键“*”。
有什么办法可以解决这个问题吗?
或者,我是否必须定义新数组来捕获键 "Shift"(keyCode:16) 和 "8"(keyCode:56) ?
抱歉,我是 keyEvent 的新手。 我在等解决方案... 请帮帮我!!
您必须单独处理 shift 键按下。
function handleKeyDown(e) {
var shiftPressed=0;
var event = (e==null ? event:e);
shiftPressed=event.shiftKey;
if ((shiftPressed)&& (event.keyCode==56))
alert ("You pressed * key");
return true;
}
演示:http://jsfiddle.net/soxj0v54/1/
对于您的代码,它看起来像-
else if(keyEvent.keyCode === 56 && keyEvent.shiftKey){
console.log("*");
$scope.inputToCal('*')
}