1. 程式人生 > >input輸入事件

input輸入事件


1、onchange事件與onpropertychange事件的區別: 
onchange事件在內容改變(兩次內容有可能還是相等的)且失去焦點時觸發;onpropertychange事件卻是實時觸發,即每增加或刪除一個字元就會觸發,通過js改變也會觸發該事件,但是該事件IE專有。  2、oninput事件與onpropertychange事件的區別:  oninput事件是IE之外的大多數瀏覽器支援的事件,在value改變時觸發,實時的,即每增加或刪除一個字元就會觸發,然而通過js改變value時,卻不會觸發;onpropertychange事件是任何屬性改變都會觸發的,而oninput卻只在value改變時觸發,oninput要通過addEventListener()來註冊,onpropertychange註冊方式跟一般事件一樣。(此處都是指在js中動態繫結事件,以實現內容與行為分離) 
3、oninput與onpropertychange失效的情況:  (1)oninput事件: a). 當指令碼中改變value時,不會觸發; b).從瀏覽器的自動下拉提示中選取時,不會觸發。  (2)onpropertychange事件:當input設定為disable=true後,onpropertychange不會觸發。 4、onkeyup(按鍵彈起)/onkeydown(按鍵按下)/onkeypress(長按)