Input Event經常使用事件觸發的前後順序以下:
php
1 keydownhtml
2 keypress瀏覽器
3 textInputspa
4 inputhtm
5 keyupblog
keydown,keyup事件
1 所有瀏覽器支持get
2 當用戶按下/釋放鍵盤上的任意鍵時觸發input
3 event.keyCode,返回鍵盤上按鍵對應的特定鍵碼it
(兼容性:分號在Firefox,Opera上返回的是ASCII碼,在IE,Safari上返回鍵碼)
4 event.charCode = 0 這兩個事件觸發時,總返回0
keypress
1 所有瀏覽器支持
2 當用戶按下字符鍵時觸發
3 event.charCode,返回鍵盤上按鍵對應的ASCII碼
(IE9+,Firefox,Chrome,Safari)
4 event.keyCode,返回鍵盤上按鍵對應的ASCII碼
(IE8-,Opera)
textInput
1 IE9+,Chrome,Safari支持,別的瀏覽器不支持
2 在文本插入文本框以前觸發,便於檢查攔截用戶輸入使用
3 在input:text,input:password,input:search,textarea以及元素是contentEditable模式時支持觸發此事件
4 event.data,返回用戶輸入的文本
(若是按鍵是s,那麼返回s;
若是按鍵是s+Shift,那麼返回S)
5 IE9中事件名爲textinput(全小寫,其它瀏覽器中I須要大寫)
input
1 IE9+,Firefox,Chrome,Safari,Opera支持
2 在內容變化時,實時觸發
3 在input:text,input:password,input:search,textarea支持觸發此事件,在內容變化時,實時觸發
(與onchange事件相似,可是onchange事件只有在元素失去焦點的時候才觸發)
4 IE9中此事件有bug,在多種刪除方式(使用退格鍵(Backspace),刪除鍵(Delete),Ctrl+X,右鍵菜單中的剪切和刪除)不會被實時觸發
5 IE9種須要使用addEventListener綁定事件,而attachEvent綁定事件的方式不可用
6 Safari5以前的版本在textarea上不支持此事件
參考資料
http://www.cnblogs.com/starof/p/6558581.html