0
某些瀏覽器中存在問題,例如Firefox。keydown識別非拉丁字符
代碼:
$(document).ready(function(){
$(this).keydown(function(e){ // Or keyup or keypress
alert(***look at output***);
}
}
鍵入非拉丁字符爲 「< 」時 - 「 б」 - 「Б」(俄羅斯)表示:
keydown keyCode=0 which=0 charCode=0
keypress keyCode=0 which=1073 charCode=1073 char=б
keyup keyCode=0 which=0 charCode=0
在Chrome相同的字符顯示:
keydown keyCode=188 which=188 charCode=0
keypress keyCode=1073 which=1073 charCode=1073 char=б
keyup keyCode=188 which=188 charCode=0
P roblem: 在所有瀏覽器中識別keydown處理程序,而不使用按鍵(由於不同鍵盤佈局上的不同charCode)。
charCode對應於輸入的實際字符。 keyCode對應於哪個鍵被按下,並且對於相同的物理鍵在不同的操作系統上有所不同,以及對於相同字符的鍵盤佈局有所不同。那麼你想要解決什麼問題呢?你真的在尋找一個特定的物理鑰匙,而不是一個特定的人物嗎? –
keyCode與Chrome,IE和Safari中的「<」,「б」,「Б」相同,但charCode不同。無論如何,這個問題是通過爲firefox案例添加異步按鍵監聽器來解決的。 –