基本概念html
Firefox、Chrome、IE9&IE9+ 均支持 oninput 事件,此外全部版本的 IE 均支持 onpropertychange 事件。前端
oninput 事件在用户输入、退格(backspace)、删除(delete)、剪切(ctrl + x)、粘贴(ctrl + v)及鼠标剪切与粘贴时触发(在 IE9 中只在输入、粘贴、鼠标粘贴时触发)。web
onpropertychange 事件在用户输入、退格(backspace)、删除(delete)、剪切(ctrl + x)、粘贴(ctrl + v)及鼠标剪切与粘贴时触发(在 IE9 中只在输入、粘贴、鼠标粘贴时触发)(仅 IE 支持)。spa
backspace、delete 两个按键的 keyCode 分别为 八、46。.net
oncut 事件在粘贴(ctrl + v)、鼠标粘贴时触发。code
function fn () { // do something } if (window.addEventListener) { input.addEventListener("input", fn); } else { input.attachEvent("onpropertychange", fn); } if (!!window.attachEvent && navigator.userAgent.match(/msie (\d)/i)[1] > 8) { input.attachEvent("onkeydown", function () { var key = window.event.keyCode; (key == 8 || key == 46) && fn(); }); input.attachEvent("oncut", fn); }