最近在写一个项目中使用到按住W键人物步行前进,按住Shift+W键,人物跑步前进,方法总结如下
Shift键和其他键组合必须是先按住Shift键,再按其他键才生效,所以先判断event.shiftKey,在判断其他键返回值,如下:
function onKeyDown(event) {
if(event.shiftKey){
switch (event.code) {
case 'ArrowUp':
case 'KeyW':
hostWalk()
break
case 'ArrowLeft':
case 'KeyA':
...
break
}
return
}
}
下面判断Shift+键的方式可以用在此组合键只执行一次时,需要一直按住Shift+键来执行模型动画时不生效,需使用上面方式
function onKeydown(event){
if(event.keyCode == 13 && event.shiftKey){
hostWalk()
}
}
其他键可自由组合