节流防抖参考link:https://blog.csdn.net/zuorishu/article/details/93630578

<template><img :src="aiUrl" class="ai-img" id="ai-img" />
</template><script>
export default {data() {return {timer: null,aiUrl: require("@/assets/img/home/ai.png")};},mounted() {// window.addEventListener("scroll", this.startMove, true);window.addEventListener("scroll", this.debounce(this.startMove, 100), true);},destroyed() {window.removeEventListener("scroll", this.startMove);clearInterval(this.timer);},methods: {debounce(fn, delay) {var timeout = null; // 创建一个标记用来存放定时器的返回值return function (e) {// 每当用户输入的时候把前一个 setTimeout clear 掉clearTimeout(timeout);// 然后又创建一个新的 setTimeout, 这样就能保证interval 间隔内如果时间持续触发,就不会执行 fn 函数timeout = setTimeout(() => {fn.apply(this, arguments);}, delay);};},startMove() {var oDiv = document.getElementById("ai-img");var scrollTop = document.getElementById("popContainer").scrollTop;const iTarget = parseInt((document.documentElement.clientHeight - oDiv.offsetHeight) / 2 +scrollTop);clearInterval(this.timer);this.timer = setInterval(function () {var oDiv = document.getElementById("ai-img");var speed = (iTarget - oDiv.offsetTop) / 5;speed = speed > 0 ? Math.ceil(speed) : Math.floor(speed);if (oDiv.offsetTop == iTarget) {clearInterval(this.timer);} else {oDiv.style.top = oDiv.offsetTop + speed + "px";}}, 30);}}
};
</script><style lang="less">
.ai-img {position: absolute;bottom: 1.2rem;width: 1.34rem;z-index: 1000;
}
#contact-us-header {.ai-img {width: 1.34rem;position: absolute;bottom: 1rem;}
}
@media screen and (max-width: 1200px) {.ai-img {width: 1.34rem;position: absolute;bottom: 2rem;}
}
@media screen and (max-width: 979px) {.ai-img {width: 1.34rem;position: absolute;bottom: 2rem;}
}
@media screen and (max-width: 768px) {.ai-img {width: 1.34rem;position: absolute;bottom: 1rem;}
}
@media screen and (max-width: 690px) {.ai-img {display: none;}
}
@media screen and (max-width: 480px) {.ai-img {display: none;}
}
</style>

vue 实现 广告悬浮效果,并防抖性能优化相关推荐

  1. 收藏这些vue项目性能优化方式,总有一天能用上

    vue项目如何进行性能优化?下面本篇文章给大家分享一些vue项目一定会用到的性能优化方法,希望对大家有所帮助! 提起性能优化 很多人眼前浮现的面试经验是不是历历在目呢?反正,性能优化在我看来他永远是前 ...

  2. Android性能优化之APK瘦身详解(瘦身73%)

    image 公司项目在不断的改版迭代中,代码在不断的累加,终于apk包不负重负了,已经到了八十多M了.可能要换种方式表达,到目前为止没有正真的往外推过,一直在内部执行7天讨论需求,5天代码实现的阶段. ...

  3. 性能优化的方法论建设

    一. 相关概念 系统性能有两个相关的概念: Throughput ,吞吐量.也就是每秒钟可以处理的请求数,任务数. Latency, 系统延迟.也就是系统在处理一个请求或一个任务时的延迟. 而这两者之 ...

  4. Vue 防抖节流 详细介绍(面试常客、去繁从简、性能优化)

    本文主要介绍js中的防抖和节流以及在vue项目中如何使用它们来达到性能优化的目的. 前置知识点:js.闭包.es6.vue等. 使用背景: 很多场景下,页面具有交互性,免不了会触发一些事件以及发送一些 ...

  5. 关于前端性能优化问题,认识网页加载过程和防抖节流

    前端性能优化-网页加载过程.性能优化方法.防抖和节流 一.网页加载过程 1.加载资源的形式 2.加载资源的过程 3.渲染页面的过程 4.关于window.onload 和 DOMContentLoad ...

  6. Vue项目的性能优化

    目录 前言 一.代码层面的优化 1. **v-if 和 v-show 区分使用场景** 2. **computed 和 watch 区分使用场景** 3. **v-for 遍历必须为 item 添加 ...

  7. [译] CSS 变量实现炫酷鼠标悬浮效果

    原文: Stunning hover effects with CSS variables 我的博客:[译] CSS 变量实现炫酷鼠标悬浮效果 我最近从Grover网站上的有趣的悬停动画中获得灵感.将 ...

  8. vue实现鼠标悬浮 显示全部内容

    在做vue项目中 常常会遇到内容太长 显示不全 这就用到鼠标悬浮效果了 使用 (element-ui) <el-tooltip :content="全部内容" placeme ...

  9. React Native悬浮效果组件

    由于其他的原因,对于React Native相关的内容最近没有投入太多的关注,从去年年底出版了<React Native移动开发实战>后,对于React Native的关注就比较少了.最近 ...

最新文章

  1. h3c l2tp ***配置
  2. 爬虫之xpath语法-节点修饰语法
  3. C#引用C++ Dll 所有類型轉換的方式(转)
  4. 【计算机网络】HTTP 与 HTTPS ( HTTP 发展过程 | HTTP/1.1 与 HTTP/2 对比 | HTTP 报文格式 )
  5. NYOJ 330 一个简单的数学题
  6. Linux下自动检测USB热插拔
  7. 计算机硬件结构中负责识别,计算机硬件基本结构树状图
  8. php提交飞信,php发送飞信消息
  9. java写七彩文字_【PS精选案例教程】创建一个漂亮的七彩文字
  10. ML Mastery 博客文章翻译(二)20220116 更新
  11. 恢复到特定点(时间点、scn、日志序列号),rman不完全恢复
  12. Linux系统架构与目录解析 pdf版,Linux系统架构与目录解析
  13. 前端打印样式乱了_皮具大百科之皮料上的3D打印,连花的阴影都能完美复刻!超美工艺...
  14. 非常强大的射击动作游戏源码完整版
  15. 什么是智能决策支持系统?
  16. Android架构纵横谈之——软件自愈能力(转载)
  17. 产品经理简历怎么写?看这一篇就够了
  18. Jumpserver docker部署及踩坑
  19. 组织机构树数据库表设计
  20. 用js做一个数字华容道

热门文章

  1. cics oracle xad_CICS安装问题及解决方式
  2. jqweui.com
  3. VTK系列教程十一:MPR定位线
  4. 月赚2万美元,开发第三方VR Mod竟成稳定副业?
  5. 【转载】尼康D90购机注意事项
  6. android开发 pdf阅读器 第三方可,android pdf 阅读器开发, pdf demo, pdf第三方控件
  7. PTA 7-207 孔融分梨(函数实现)
  8. Html5 css3 左箭头,利用CSS3特性巧妙实现漂亮的DIV箭头
  9. tiny ImageNet
  10. CSS学习day01---XHTML和HTML的重要区别