我用onkeydown
事件和event
對象閱讀的按鍵:反斜槓鍵代碼被識別爲德國元音
function test(e) {
e = e || window.e;
var keyCode = e.which || e.keyCode;
alert(keyCode +' -> '+ String.fromCharCode(keyCode));
}
以上功能的工作原理怪異,如果用戶按反斜線鍵(\
) - 它總是返回Ü
,而不是\
。 e.keyCode
的值是220
這意味着一切正常,所以可能fromCharCode()
是個問題。 我認爲這個問題是一個事實,反斜槓是一個特殊的字符。但是,我怎麼能省略它,並顯示220
代碼適當的字符?
我在JSFiddle上做了一個實例。
反斜槓中charCode是'92',不'220'。我得到了uml; aut也報告了我的,但我不知道爲什麼...(''\\'。charCodeAt(0)=== 92')。我非常懷疑'fromCharCode'的問題,因爲這是非常古老的,有人必須注意到某些時候..所以也許瀏覽器給你錯誤的charcode。 – somethinghere
檢查Unicode表,220是U(有兩個點):http://www.utf8-chartable.de/unicode-utf8-table.pl?unicodeinhtml=dec – Justinas
@Justinas,是的,但我也嘗試過,當只要按鍵盤上的'\',它就會報告我的charcode 220。這是意想不到的。 – somethinghere