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

2023-03-04 15:46:01
目录
Vue的@blur/@focus事件focus和blur事件,改变选中时搜索框的背景色总结

Vue的@blur/@focus事件

    @blur>@focus是元素获取焦点时所触发的事件
     
    <template>
      <div>
        <!--
        @blur 当元素失去焦点时触发blur事件
        -->
        <div>
          <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
      }
    }

    总结

    以上为个人经验,希望能给大家一个参考,也希望大家多多支持易采站长站。