2010-12-10 68 views
0

爲什麼沒有event.which在IE中工作?爲什麼沒有event.which在IE中工作?

這是我的代碼,它可以在FireFox和Chrome中正常工作,但不在IE中。

$("#inputFeild").keypress(function(event){ 
      alert(event.which); 
    }); 

#inputFeild是一個textarea。

+0

順便說一句,它是領域不行。 – BoltClock 2010-12-10 03:03:12

+0

這段代碼不工作的方式是什麼?它會在所有瀏覽器中提醒可打印鍵的字符代碼,並且對於不可打印的鍵(如箭頭鍵和功能鍵)會有所不同。 – 2010-12-10 10:25:59

回答

3

keypress事件特別是不可靠的鍵碼,使用你正在做不管什麼適當的事件...例如,如果你需要的值,使用keyup代替:

$("#inputFeild").keyup(function(event){ 
    alert(event.which); 
}); 

.keypress()文檔注意到其中的一些差異:

注意​​和keyup提供指示按下其中的按鍵的代碼,而keypress指示哪個角色是恩特紅。例如,小寫字母「a」將被報告爲​​和keyup 65,但是被keypress報告爲97。大寫字母「A」在所有事件中報告爲65。由於這種區別,當捕捉特殊擊鍵(如箭頭鍵)時,.keydown().keyup()是更好的選擇。

相關問題