搜索功能鼠标悬浮icon往左,往右伸展开

<template>
    <div>
         <input
            :class="['change-input',{focus: isFocusOn}]"
            v-model.trim="keyword"
            id="searchInput"
            placeholder="请输入关键字"
            type="text"
            @focus="isFocusOn= true"
            @blur="mouseLeave"
            @mouseenter="isFocusOn= true"
            @input="searchByKeyDebunce()"
            @mouseleave="mouseLeave"/>
          <i class="search-icon" @mouseenter="isFocusOn= true" @mouseleave="mouseLeave"/>
    </div>
</template>
<script>
    export default {
        name: 'in',
        data () {
            return {
                keyword: '',
                timeOut: null,
                 isFocusOn: false // 获取焦点
            }
        },
         mounted() {
            // 搜索框
            this.mouseLeave()
        },
        methods: {
             mouseLeave() {
              const id = document.activeElement.id
              if (id === 'searchInput') {
                this.isFocusOn = true
              } else if (this.condition.keyword) {
                this.isFocusOn = true
              } else {
                this.isFocusOn = false
              }
            },
            searchByKeyDebunce () {
              clearTimeout(this.timeOut)
              this.timeOut = setTimeout(() => {
                  this.searchByKey(true) // 查询接口
              }, 1000)
            }
        }
    }
</script>
<style>
  .change-input{
      position: absolute;
      top: 15px;
      right: 550px;
      width: 52px;
      font-size: 14px;
      height: 42px;
      box-sizing: border-box;
      border-radius: 24px;
      outline: none;
      transition: all linear .5s;
      background-color: #74bcfc;
      border: 1px solid #aedbfd;
      color: #fff;
      &::-webkit-input-placeholder {
        color: #74bcfc;
      }
      &:-ms-input-placeholder {
        color: #74bcfc;
      }
    }
    .search-icon{
      display: inline-block;
      position: absolute;
      top: 25px;
      right: 557px;
      background: url("../../assets/newhome/search_icon.png") no-repeat;
      width: 30px;
      height: 30px;
    }
    .focus{
      width: 200px;
      padding: 0 40px 0 15px;
    }
</style>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值