Vue中的@blur/@focus事件解读

2023-03-04 15:06:09

目录Vue的@blur/@focus事件focus和blur事件,改变选中时搜索框的背景色总结Vue的@blur/@focus事件@blur是当元素失去焦点时所触发的事件@focus是元素获取焦点时...

目录
vue的@blur/@focus事件
focus和blur事件,改变选中时搜索框的背景色
总结

Vue的@blur/@focus事件

@blur 是当元素失去焦点时所触发的事件
@focus是元素获取焦点时所触发的事件
 
<template>
  <div>
    <!--
    @blur 当元素失去焦点时触发blur事件
    -->
    <div>
   js   <input type="text" placeholder="请输入内容" @blur="blurText"/>
    </div>
 
  </div>
</template>
 
<script>
    export default {
      name: "commitText",
      methods:{
        blurText(){
          console.log("blur事件被执行了")
        }
      }
    }
</script>
 
<style scoped>
 
</style>

focus和blur事件,改变选中时搜索框的背景色

template

<div class="search-box" ref="searchBoxOfChatRoom">
 <i class="fa fa-search" aria-hidden="true"></i>
 <input
  ref="searchOfChatRoom"
  class="chatroom-search"
  type="search"
  placeholder="搜索群成员"
  @focus="changBackground(1)"
  @blur="changBackground(2)"
 >
</div>

js

changBackground (flag) {

 switch (flag) {
  case 1:
   console.log('获取焦距')
   this.$refs.searchBoxOfChatRoom.style.background = 'white'
   this.$refs.searchOfChatRoom.style.background = 'white'
   break
  case 2:
   console.log('失去焦距')
   this.$refs.searchBoxOfChatRoom.style.background = '#dadada'
   this.$refs.searchOfChatRoom.style.background = '#dadada'
   break
  default:
   break
 }
}

总结

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