• 监听input内容改变的oninput与onpropertychange在ie9的bug


    在做autocomplate的时候发现,ie9中,剪切、退格、删除不触发oninput事件,而ie9和ie9+已经移除了onpropertychange事件。

    只好尝试添加退格、delete、剪切事件,来触发onpropertychange

     1             var input = $("#J_autocomplete");
     2             var fn = function(){
     3                 // console.log('value changed')
     4             }
     5             input.bind('input.autocomplete',fn)
     6                 .bind('propertychange.autocomplete',function(e){
     7                     if(e.originalEvent.propertyName && e.originalEvent.propertyName == 'value'){
     8                         fn.call(this,e);
     9                     }
    10                 });
    11                 
    12             
    13             //ie9支持addEventListener,ie10开始支持FileReader api
    14             if(documnt.all && typeof FileReader === 'undefined' && window.addEventListener){
    15                 //退格与删除
    16                 input.bind("keydown.autocomplete", function(e) {
    17                     var key = e.keyCode;
    18                     (key == 8 || key == 46) && $(this).trigger('input.autocomplete');
    19 
    20                 });
    21                 //剪切
    22                 input.bind("cut.autocomplete", function(e){
    23                     $(this).trigger('input.autocomplete')
    24                 });
    25             }
  • 相关阅读:
    Java_流程控制
    Java_循环
    Java_集合
    Java_泛型
    关于DTO的理解
    IDEA_Springboot启动Tomcat报错_APR
    canvas画圆又毛边
    关于数字加载的动画 jquery
    微信里关闭窗口 js
    依赖jquery的select皮肤2
  • 原文地址:https://www.cnblogs.com/henryli/p/3441134.html
Copyright © 2020-2023  润新知