美文网首页
input框focus,blur,change,input,ke

input框focus,blur,change,input,ke

作者: 小汤猿 | 来源:发表于2019-02-22 11:16 被阅读0次
  <div id="app">
    <input type="text" id="txt"/>
    <p id="show"></p>
  </div>
  <script >
    let result = []
    txt.addEventListener('keyup',function (event){
      result.push({
        event:'keyup',
        value:this.value,
        code:event.keyCode,
        eventThis:this
      })
      console.log(result)
    })
    txt.addEventListener('keydown',function (event){
      result.push({
        event:'keydown',
        value:this.value,
        code:event.keyCode,
        eventThis:this
      })
      console.log(result)
    })
    txt.addEventListener('input',function (event){
      result.push({
        event:'input',
        value:this.value,
        code:event.keyCode,
        eventThis:this
      })
      console.log(result)
    })
    txt.addEventListener('change',function (event){
      result.push({
        event:'change',
        value:this.value,
        code:event.keyCode,
        eventThis:this
      })
      console.log(result)
    })
    txt.addEventListener('focus',function (event){
      result.push({
        event:'focus',
        value:this.value,
        code:event.keyCode,
        eventThis:this
      })
      console.log(result)
    })
    txt.addEventListener('blur',function (event){
      result.push({
        event:'blur',
        value:this.value,
        code:event.keyCode,
        eventThis:this
      })
      console.log(result)
    })

输出结果如下:


Screenshot from 2019-02-22 11-14-33.png

从图中可以看出如下结论:

  1. keydown事件发生时,输入值并没有发生变化,所以keydown可用于阻止某些输入字符的显示。

  2. input事件发生时,无法获取到keyCode值,并且紧随在keydown事件之后。

  3. keyup事件最后发生,一次键盘敲入事件彻底完成。

  4. change事件只会发生在输入完成后,也就是输入框失去焦点之前。

  5. 输入完成后观察
    当用户完成所有的输入时,这时候必定会发生blur事件,只有这时才会触发change,所以可用blur与change监听用户输入是否完成,输入框的验证多半发生在此时。

  6. 输入事件流
    输入框发生的事件流程依次为focus、keydown、input、keyup、change与blur,见下图所示。

inputImg.png

相关文章

  • input框focus,blur,change,input,ke

    输出结果如下: 从图中可以看出如下结论: keydown事件发生时,输入值并没有发生变化,所以keydown可用于...

  • input输入事件流

    输入框发生的事件流程依次为focus、keydown、input、keyup、change与blur,见下图所示

  • 53.vue 事件 和事件修饰符

    1.事件 @click 点击事件@focus input获取焦点@blur input失去焦点@input...

  • 带模糊查询的select下拉列表

    要求: input.focus时 显示下拉列表 input.blur时 隐藏下拉列表,输入框输入关键字 , 下拉列...

  • 2021-03-05 input change blur

    input:input框中的值变化时就会触发 change和blur 输入框中的值变化后失焦后,先触发 chang...

  • 事件方法

    // blur: 失去焦点// keyup: 键盘抬起事件 // input: 输入事件// change: 改变...

  • ios输入框导致页面定位问题

    最近写项目发现ios上用户在使用输入框的时候会导致页面整体向上移位这时候可以给input框添加focus和blur...

  • :focus选择器

    :focus是选择获得焦点的输入字段,并设置其样式: 如input:focus就是为input输入框获取到焦点后设...

  • vue双向绑定v-model的用法

    表单输入input双向绑定 input输入框的@change事件,要在 input 失去焦点的时候才会触发;在输入...

  • input 离焦事件和点击事件冲突

    场景 有一个input输入框,其绑定了blur事件有一个保存按钮,其绑定了click事件blur事件触发input...

网友评论

      本文标题:input框focus,blur,change,input,ke

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