keyCode
该属性已被废弃
一个监听键盘事件的方法。返回值为该按键所对应的ASCII键码。 keyCode属性对可打印字符不可用,对于需要同时按下shift或alt键的输入,可能无法监听。
const box = document.querySelector("div"); // 获取页面元素
const keyArr: number[] = [38, 38, 40, 40, 37, 39, 37, 39, 66, 65]; // 设置即将键入的键盘按键,这个数组的值代表着 上上下下左右左右ba 这十个按键
let newKeyArr: number[] = []; // 用来保存键入的键值
// 监听页面中的键盘事件
document.addEventListener('keydown', e => {
// 判断键入的值是否等于预先设置好的值
// 如果是就追加进保存键值的数组,如果不是先判断是不是等于设置的第一个值
// 如果等于第一个值就重置数组长度为1,如果不是则重置为空数组
if (e.keyCode === keyArr[newKeyArr.length]) {
newKeyArr.push(e.keyCode);
// 判断追加进数组后 是否等于预先设置好的数组。如果等于就进行处理结果
if (newKeyArr[keyArr.length - 1] === keyArr[keyArr.length - 1]) {
box.style.display = 'block';
}
} else if (e.keyCode === 38) {
newKeyArr = [38];
} else {
newKeyArr = [];
}
})