??????? onkeypress事件不能對(duì)系統(tǒng)功能鍵(例如:后退、刪除等,其中對(duì)中文輸入法不能有效響應(yīng))進(jìn)行正常的響應(yīng),onkeydown和onkeyup均可以對(duì)系統(tǒng)功能鍵進(jìn)行有效的攔截,但事件截獲的位置不同,可以根據(jù)具體的情況選擇不同的鍵盤(pán)事件。
??????? 由于onkeypress不能對(duì)系統(tǒng)功能鍵進(jìn)行捕獲,導(dǎo)致window.event對(duì)象的keyCode屬性和onkeydown,onkeyup鍵盤(pán)事件中獲取的keyCode屬性不同,主要表現(xiàn)在onkeypress事件的keyCode對(duì)字母的大小寫(xiě)敏感,而onkeydown、onkeyup事件不敏感;onkeypress事件的keyCode無(wú)法區(qū)分主鍵盤(pán)上的數(shù)字鍵和付鍵盤(pán)數(shù)字鍵的,而onkeydown、onkeyup的keyCode對(duì)主付鍵盤(pán)的數(shù)字鍵敏感。
注:在Maxthon瀏覽器中,onkeydown和onkeyup有連續(xù)響應(yīng)兩次鍵盤(pán)事件的BUG,onkeydown不能正常地對(duì)F1~F12的功能鍵進(jìn)行正常的截獲(onkeyup沒(méi)有發(fā)現(xiàn)該問(wèn)題),具體原因不明。不知道以后是否會(huì)進(jìn)行訂正。