1、 onchange事件与 onpropertychange 事件的区别:
-
onchange事件在内容改变(两次内容有可能还是相同的)且失去焦点时触发。
-
onpropertychange事件却是实时触发,即每增加一个字符或者减少一个字符就会触发,通过js改变也会触发该事件,但是该事件是IE专有的。
2、oninput 事件与onpropertychange 事件的区别: -
oninput事件是IE之外的大多浏览器支持的事件,在value改变时触发,实时的,即每增加一个或者删除一个字符就会触发,然而通过js改变value时,不会触发。
-
onpropertychange 事件是任何属性改变都会触发的,而input却是只在value改变时触发,oninput要通过addEventListener()来注册,onpropertychange 注册方式跟一般事件一样。(为了是内容和行为分离,多以建议都是在js中绑定事件)
3、oninput 与onpropertychange事件失效的情况: -
oninput事件:
1.当脚本中改变value时,不会触发
2.从浏览器的自动下拉提示中选取时,不会触发
- onpropertychange 事件:
当input设置为disable= true 时,onpropertychange 不会触发