我应该怎样去听按键,按键和按键,例如 A 或 Alt + A ?
根据ScreenSpaceEventHandler(element).setInputAction(action, type, modifier)的文档,type
和modifier
必须分别属于ScreenSpaceEventType和KeyboardEventModifier类型,这相当于受到限制为我的目的提供的一系列活动。
答案 0 :(得分:1)
ScreenSpaceEventHandler
仅适用于涉及屏幕空间的输入事件:鼠标,触摸和指针事件。对于 ALT + A 等原始键盘事件,只需使用keyboard events,keydown
等JavaScript原生keypress
即可。 #39; t需要铯帮助接收这些事件。
但是,您需要将tabindex
应用于Cesium画布,以使其能够接收输入焦点:
var viewer = new Cesium.Viewer('cesiumContainer');
var canvas = viewer.canvas;
canvas.setAttribute('tabindex', '0'); // needed to put focus on the canvas
您可以在Cesium Camera Tutorial中找到完整的工作示例。单击地球本身,然后使用 W , A , S , D 移动相机。< / p>