Vue中失去焦点时所触发的事件问题

 更新时间:2023年06月05日 10:41:19   作者:viceen  
这篇文章主要介绍了Vue中失去焦点时所触发的事件问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

Vue失去焦点时所触发的事件

1-html、失去焦点

<input type="text" onBlur="txtblur()">
<script>
    function txtblur(event){ //当前元素失去焦点
        console.log(123);
    }
</script>

2-vue2.0、失去焦点

@input 一般用于监听事件,只要输入的值变化了就会触发input

<input 
       :type="type" 
       :value="value" 
       :placeholder="placeholder" 
       :name="name" 
       @input="$emit('input',$event.target.value)"
       />

@click 事件触发事件

<input type="text" @click="clickFn">

@blur 是什么?

@blur 是当元素失去焦点时所触发的事件

使用

<template>
  <div>
    <input type="text" placeholder="请输入内容" @blur="blur"/>
  </div>
</template>
<script>
    export default {
      name: "@blur_61",
      methods:{
        blur(){
          console.log("blur事件被执行")
        }
      }
    }
</script>
<style scoped>
</style>

3-vue3.0、失去焦点

结构

<el-input
          v-model="inputValue"
          v-bind="$attrs"
          @blur="handleBlur"
          @input="handleInput"
          class="custom-input"
          >
</el-input>

方法

const handleBlur = () => {}
const handleInput =  (v) => {}
return {
    ...toRefs(state),
    handleBlur,
    handleInput
};

vue div获得焦点和失去焦点

<div tabindex="0" @blur="aside1_hide()" ref="aside1" class="aside" style="width: 200px; overflow: scroll;">
    <!-- background-color="#23303E" transparent -->
    <el-menu background-color="#23303E" text-color="#fff" active-text-color="#fff">
       ...
    </el-menu>
</div>
left_click: function() {
      if (!this.left_show) {
        this.$refs.aside1.style.left = "0"
        this.$refs.aside1.focus()  //获得焦点
        this.left_show = true
      } else {
        this.aside1_hide()
      }
},
aside1_hide:function () {
      this.$refs.aside1.style.left = "-200px"
      this.left_show = false
},
 
@media screen and (min-width: 1200px) {
  .aside {
    position: static;
    width: 200px;
    height: 100vh;
    margin: 0;
    padding: 0;
    background-color: #23303E;
    z-index: 100;
    /*移动时的过度效果*/
    transition: left 500ms ease;
    color: #fff;
  }
}
@media screen and (max-width: 1200px) {
  /*隐藏在左边*/
  .aside {
    position: fixed;
    /*相对于窗口固定定位*/
    top: 0;
    left: -200px;
    /*隐藏在左边*/
    width: 200px;
    height: 100vh;
    margin: 0;
    padding: 0;
    background-color: #23303E;
    z-index: 100;
    /*移动时的过度效果*/
    transition: left 500ms ease;
    /*padding: 36px;*/
    color: #fff;
  }
}
/*可以滚动,但隐藏滚动条*/
.aside::-webkit-scrollbar {
  display: none;
}

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Vue3 组合式函数Composable最佳实战

    Vue3 组合式函数Composable最佳实战

    这篇文章主要为大家介绍了Vue3 组合式函数Composable最佳实战详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-06-06
  • Element Steps步骤条的使用方法

    Element Steps步骤条的使用方法

    这篇文章主要介绍了Element Steps步骤条的使用方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-07-07
  • Vue.js源码分析之自定义指令详解

    Vue.js源码分析之自定义指令详解

    这篇文章主要给大家介绍了关于Vue.js源码分析之自定义指令的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-04-04
  • 在vue中写jsx的几种方式

    在vue中写jsx的几种方式

    本文主要介绍了在vue中写jsx的几种方式,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-07-07
  • vue项目main.js使用方法详细介绍

    vue项目main.js使用方法详细介绍

    这篇文章主要给大家介绍了关于vue项目main.js使用方法的相关资料,main.js文件是程序的入口文件,加载各种公共组件,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2023-09-09
  • Vue集成Iframe页面的方法示例

    Vue集成Iframe页面的方法示例

    这篇文章主要介绍了Vue集成Iframe页面的方法示例,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-12-12
  • vue将秒数转成"时分秒"格式实例代码

    vue将秒数转成"时分秒"格式实例代码

    在项目中,请求后台接口返回的值是秒,这篇文章主要给大家介绍了关于vue将秒数转成"时分秒"格式的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2023-06-06
  • vue v-if未生效问题及解决

    vue v-if未生效问题及解决

    这篇文章主要介绍了vue v-if未生效问题及解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-03-03
  • 在Vue项目中引入JQuery-ui插件的讲解

    在Vue项目中引入JQuery-ui插件的讲解

    今天小编就为大家分享一篇关于在Vue项目中引入JQuery-ui插件的讲解,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-01-01
  • 浅谈Vue SSR中的Bundle的具有使用

    浅谈Vue SSR中的Bundle的具有使用

    这篇文章主要介绍了浅谈Vue SSR中的Bundle的具有使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-11-11

最新评论