2015-05-19 42 views
0

我想提醒任意鍵按下:使用String.fromCharCode不會返回所有值

alert(String.fromCharCode(e.which)); 

似乎爲A-Z a到z字符,但不能用於其他任何字符工作。

我的目標是讓它適用於任何角色(所見即所得)。

+0

您還沒有表現出你是如何掛鉤該到事件... –

+0

document.body.onkeyup = function(e) –

+0

這應該是問題的一部分 - 理想情況下作爲包含演示問題所需的所有內容的完整腳本的一部分。 –

回答

1

您可以手動提供自己的映射,請參閱我的jsfiddle例如: https://jsfiddle.net/Glogo/dab3hzz7/1/

示例代碼:

function myStringFromCharCode(which) { 
    var strKey = String.fromCharCode(which); 

    switch(which) { 
     case 13: return "Shift" 
     case 17: return "Ctrl" 
     case 18: return "Alt" 
     // add more mappings here ... 
    } 

    return strKey;  
} 

function myOnKeyUp(e) { 
    alert(e.which + "=" + myStringFromCharCode(e.which)); 
} 

document.body.onkeyup=myOnKeyUp; 
+0

謝謝!我想知道是否有可能獲得真正的字符值! @#$%^&*() –

+0

對於這些字符,您可能需要能夠捕捉多個鍵(具體取決於您的鍵盤佈局,例如在英文鍵盤上@是Shift + 2)。看到這個問題:http://stackoverflow.com/questions/5203407/javascript-multiple-keys-pressed-at-once 但我不知道如何得到輸出的字符,因爲它取決於鍵盤佈局 – Glogo