2012-12-02 65 views
0

我正在嘗試將關鍵事件處理爲畫布。我添加了一個tabindex,它允許畫布接收事件。我的問題是keydown事件沒有註冊。他們仍然在閱讀文件。我可以得到字母鍵事件,但不是標準的箭頭鍵(或者至少在除FF之外的所有內容中)。Javascript重要事件IE,Safari

所以我想我的問題是我如何處理IE,Safari和Chrome中的箭頭鍵事件?在所有瀏覽器中,我都可以用字母和數字得到「排序」。只是沒有箭頭鍵。

謝謝你一堆。

$('#tetris-canvas').keypress(function(e){ 
    e.preventDefault(); 
    alert('sort of handled'); 
    tetris.keyHandler(e); 
}); 

我的頁面是在http://tetris.townsendwebdd.com/,如果你想看到整個代碼

因此改變它的$(document).keypress(亞達); Safari瀏覽器仍然不處理箭頭

回答

1

試試這個:

$(#tetris-canvas).keydown(function(e) { 
    e.preventDefault(); 
    e.stopPropagation(); 
    // your code... 
});​ 
+0

這工作。謝謝你爲什麼會使用keydown而不是按鍵雖然 – Gambai

+0

這可能有幫助... http://stackoverflow.com/questions/1367700/whats-the-difference-between-keydown-and-keypress-in-net –