【js】Input事件

Input Event常用事件觸發的先後順序如下:

1 keydown

2 keypress

3 textInput

4 input

5 keyup



keydown,keyup

1 全部瀏覽器支持

2 當用戶按下/釋放鍵盤上的任意鍵時觸發

3 event.keyCode,返回鍵盤上按鍵對應的特定鍵碼

(兼容性:分號在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

http://help.dottoro.com/ljhxklln.php

http://help.dottoro.com/ljhiwalm.php

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章