美文网首页
js监听文本框输入

js监听文本框输入

作者: trustjs | 来源:发表于2018-08-22 11:08 被阅读36次

    转自 http://caibaojian.com/toutiao/4360, 原文 司徒正美

    原理

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

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

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

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

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

    示例

    var input = document.getElementById("test");
    function fn() {
      // 你要执行的代码
    }
    
    if(window.addEventListener) { //先执行W3C
      input.addEventListener("input", fn, false);
    } else {
      input.attachEvent("onpropertychange", fn);
    
    }
    
    if(window.VBArray && window.addEventListener) { //IE9
      input.attachEvent("onkeydown", function() {
        var key = window.event.keyCode;
        (key == 8 || key == 46) && fn();//处理回退与删除
    
      });
      input.attachEvent("oncut", fn);//处理粘贴
    }
    

    相关文章

      网友评论

          本文标题:js监听文本框输入

          本文链接:https://www.haomeiwen.com/subject/qtdbxxtx.html