关注前端开发微信微信号web007007

监听文本框输入(input & textarea)

作者 管理员 发布时间 2012-10-11 11:50 文章分类 JavaScript 文章评论 抢沙发 阅读次数

基本概念

Firefox、Chrome、IE9&IE9+ 均支持 oninput 事件,此外所有版本的 IE 均支持 onpropertychange 事件。

oninput 事件在用户输入、退格(backspace)、删除(delete)、剪切(ctrl + x)、粘贴(ctrl + v)及鼠标剪切与粘贴时触发(在 IE9 中只在输入、粘贴、鼠标粘贴时触发)。

onpropertychange 事件在用户输入、退格(backspace)、删除(delete)、剪切(ctrl + x)、粘贴(ctrl + v)及鼠标剪切与粘贴时触发(在 IE9 中只在输入、粘贴、鼠标粘贴时触发)(仅 IE 支持)。

backspace、delete 两个按键的 keyCode 分别为 8、46。

oncut 事件在粘贴(ctrl + v)、鼠标粘贴时触发。

实现代码


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);

}

本文固定链接: http://www.web92.net/760.html | WEB前端开发

该日志由 于2012年10月11日发表在 JavaScript 分类下, 你可以发表评论,并在保留原文地址及作者的情况下引用到你的网站或博客。
原创文章转载请注明: 监听文本框输入(input & textarea) | WEB前端开发