zoukankan      html  css  js  c++  java
  • input事件引发的输入法错乱问题

    给元素绑定onCompositionStart和onCompositionEnd事件,并制定标记位,外加个防抖。

    注意:

    并不是先执行onCompositionStart再执行onCompositionEnd再执行onInput的顺序;

    而是执行onCompositionStart,生成“虚文本”,同时会触发onInput事件;

    当onCompositionEnd之后,才是真实文本。

    兼容性:(兼容ie和谷歌哦,好用!)

    <input type="text" id="test">

    var compositionFlag = true;

    var timer = null;

    var tempValue = '';

    $('#test').on('compositionstart',function(){

      compositionFlag = false;

      tempValue = $('#test').val();//虚文本值

      console.log(tempValue);

    })

    $('#test').on('compositionend',function(){

      compositionFlag = true;

    })

    $('#test').on('input',function(){

      if(timer){

        clearTimerout(timer);

      }

      timer = setTimeout(function(){

        if(compositionFlag){

          console.log($('#test').val());//真实文本

          //这里做你需要的逻辑

        }

      },1000)

    })

  • 相关阅读:
    Spring的AOP与代理
    JAVA 反射机制
    JDK动态代理与Cglib库
    HDFS的运行原理(转)
    Spring中IoC的入门实例
    spring
    Spring中IOC和AOP的详细解释
    自己动手写ORM
    Mongodb 安装
    mongodb集群配置分片集群
  • 原文地址:https://www.cnblogs.com/xinyouhunran/p/13099578.html
Copyright © 2011-2022 走看看