下载数据那种飞入的动画效果

在/utils/index.js里面写方法:

addPointAnimation = (context) => {

  const btn = document.querySelector('.moving-box .el-button--primary')

  // const btnLoad = document.querySelector('.moving-dataload .el-button--primary')

  const $ball = document.createElement('div')

  $ball.className = 'moving-point'

  // 针对数据下载设置顶部和左侧距离

  // let docWid = document.body.offsetWidth // (包括边线的宽)

  // let docHeig = document.body.offsetHeight // (包括边线的高)

  // console.log(docHeig / 1.04, btnLoad.offsetParent.offsetTop)

  $ball.style.top = btn.offsetTop + 'px'

  $ball.style.left = btn.offsetLeft + 'px'

  // $ball.style.top = btnLoad ?  docHeig / 1.04 + 'px' : btn.offsetTop + 'px' // 577,840

  // $ball.style.left = btnLoad ? 340 + 'px' : btn.offsetLeft + 'px' // 340

  $ball.style.position = 'fixed'

  $ball.style.width = '14px'

  $ball.style.height = '14px'

  $ball.style.zIndex = 1003

  $ball.style.background = '#666'

  $ball.style.opacity = '0'

  $ball.style.borderRadius = '50%'

  document.body.append($ball)

  let top = document.querySelector('.el-icon-download').getBoundingClientRect().top - 4 + 'px'

  let left = document.querySelector('.el-icon-download').getBoundingClientRect().left + 12 + 'px'

  setTimeout(() => {

    $ball.style.top = top

    $ball.style.left = left

    $ball.style.opacity = '1'

    $ball.style.transition = 'top 0.5s ease-in-out,left 0.7s ease-in-out, opacity 0.5s ease-in-out'

  }, 20)

  setTimeout(() => {

    $ball.style.zIndex = '0'

    const download = document.querySelector('.download-num')

    download.style.transform = 'scale(0.3)'

  }, 800)

  setTimeout(() => {

    const download = document.querySelector('.download-num')

    if (download) {

      download.style.transform = 'scale(1)'

      $ball.style.opacity = '0'

    }

    context.$store.dispatch('RefreshUndownload')

  }, 1100)

}

使用

import {  addPointAnimation } from '@/utils/index'

addPointAnimation(this)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值