我的問題是,我最近開始更改我的HTML5 webapp使用全屏+指針鎖而不是在窗口中拖動鼠標。除了鼠標,該應用程序還使用鍵盤,並且以前一切正常。但是,現在我無法獲得任何類型的按鍵。指針鎖定鼠標完美工作。無法獲得keydown/keyup與指針鎖定/全屏幕
以前我聽了按鍵這樣的:
document.onkeydown = handleKeyDown;
document.onkeyup = handleKeyUp;
其中handleKeyDown和最多的功能,例如:
function handleKeyUp(event) {
doStuffWith(event.keyCode);
}
現在,我已經添加鍵盤監聽器旁邊的我的鼠標移動監聽器:
document.addEventListener('keyup', handleKeyUp(event), false);
document.addEventListener('keydown', handleKeyDown(event), false);
其中handleKey *與上面相同,但doStuffWith d沒有做任何事情。它似乎得到了一些未定義的事件,沒有別的。這可能是一個相當基本的問題,但我很難解決它。我在Google上找到的大多數示例和教程都不使用addEventListener,而是使用之前使用的舊樣式。
我非常感謝任何幫助。
編輯//一個澄清:因爲事件是不確定的,doStuffWith不會被調用可言,因爲執行試圖讀取未定義
謝謝,我知道有這樣的事情!不幸的是,這並沒有解決問題。聽衆對於非全屏效果似乎很好,但是在全屏中,根據日誌發生的唯一關鍵事件是esc上升時,即退出全屏後。 – Asta 2012-04-02 07:22:09
@Asta:好的。我對使用全屏和指針鎖定幾乎一無所知,因此我可能無法提供更多幫助,除非提供此鏈接提到在全屏模式下禁用字母數字鍵:https://developer.mozilla。 org/en/DOM/Using_full-screen_mode#Things_your_users_want_to_know – 2012-04-02 08:12:24
謝謝,這就是原因!我只嘗試字母數字(因爲這是應用程序使用)。箭頭鍵工作正常。不能說我真的理解這個決定,但是,因爲大多數FPS的使用是和數字。你介意用這個信息做出答案,所以我可以接受它嗎? – Asta 2012-04-02 08:32:40