2014-03-13 52 views

回答

0

很簡單,因爲的鍵碼是37。就像左箭頭按鈕一樣,它也是鍵碼37。非ACSII密鑰的虛擬鍵碼與ASCII碼重疊。

+0

什麼SH我該怎麼辦?我需要向左箭頭才能起作用 – user3318208

+0

@ user3318208我想最簡單的解決方案是檢查在檢查箭頭時是否沒有使用修飾鍵(因爲總是按'shift'來按'%')。 – gpgekko

0

使用此

(event.keyCode == 37 && key != '%') || (event.keyCode == 39 && key != '\'') 

而不是

event.keyCode == 37 || event.keyCode == 39 
+0

@if我刪除了這個,在Mozilla左箭頭沒有運作。 – user3318208

+0

也,如果我只是刪除event.keyCode == 37單引號怎麼樣? -_- – user3318208

+0

然後使用這個'(event.keyCode == 37 && key!='%')'而不是'event.keyCode == 37' – 2014-03-13 09:15:48

0

添加例外keyCode = 37使用String.fromCharCode(event.keyCode)

if (String.fromCharCode(event.keyCode) !== '%' && 
    (event.keyCode == 8 || event.keyCode == 37 || event.keyCode == 39 || englishAlphabetAndWhiteSpace.test(key))) 

JSFiddle

+0

如何對單引號? – user3318208

+0

@ user3318208的相同''%'一樣使用String.fromCharCode(event.keyCode)!== 「」「'檢查此[小提琴](http://jsfiddle.net/praveen_jegan/Fn9cy/81/) – Praveen

+0

的問題是,在Mozilla左箭頭和右箭頭不起作用 – user3318208