当前位置: 首页 > news >正文

邹城手机网站建设南昌网站设计

邹城手机网站建设,南昌网站设计,优秀企业网站建设价格,电商小程序模板目录 1. 背景 2. 分析 3. 代码实现 1. 背景 最近在项目中发现一个有意思的小需求#xff0c;鼠标移入一个盒子里#xff0c;然后盒子里的图就开始动起来#xff0c;就像一个gif一样#xff0c;然后鼠标移出#xff0c;再按照原来的变化变回去#xff0c;就像变形金刚…目录 1. 背景 2. 分析 3. 代码实现 1. 背景 最近在项目中发现一个有意思的小需求鼠标移入一个盒子里然后盒子里的图就开始动起来就像一个gif一样然后鼠标移出再按照原来的变化变回去就像变形金刚一样首先鼠标移入从车变成机器人鼠标移出然后从机器人变回车。 2. 分析 实现这样一个需求的前提是UI需要给你提供这样一张图这个图是由多个连续的画面一起构成的一张图如下这张我在网上随便找的图。其实这是一张图只不过这张图由很多连贯的图一起组成的当我们将各个独立的画面移动到可视窗口时那么看起来就像是一个动态图一样。 然后我们来分析如何实现首先我们要有一个div然后设置这个div的background为这张图片假设这个div宽150px这张图宽1500px那么浏览器呢就会默认显示这张图的前150px也就是将这张图的最左端显示在div上。那么我们的可视窗口就是这150px看到的就是这张图里的第一个小图。然后我们通过js的循环计时器setInterval来动态改变这个图的backgroundPositionX如果UI提供的图是竖直的那么就动态改变backGroundPositionY。 3. 代码实现 HTMLCSS templatediv classcontainerdivclassimgContainermouseenterhandleMouseEntermouseleavehandleMouseLeavediv classimg refimgRef/div/div/div /templatestyle scoped .container {width: 100%;height: 100%;display: flex;align-items: center;justify-content: center; } .imgContainer {width: 150px;height: 300px; } .img {width: 100%;height: 100%;background: red;background: url(/assets/lotsImg.png);background-position: 0 0; } /style js部分 在mouseEnter函数中我们先设置循环定时器然后在interValFun里设置具体逻辑这里的if(num 12)要根据UI提供的图片自己来设定因为我找的这个图一共有12个小图所以是12然后具体的-${num * 136}px这里具体要乘以多少也要根据图片的渲染大小来计算。如下图 1636 / 12 约等于 136所以我设置的136px。 在mouseLeave函数中首先先清楚之前的定时器然后获取当前图片的backGroundPositionX值然后如果这个值小于等于0就一直重复的更新backGroundPositionX值如果大于了0说明这个图的位置已经来到了最左端了就可以不用再计算了就清除这个定时器。 import { ref } from vue;const imgRef ref(null); const interval ref(null);function handleMouseEnter() {interval.value setInterval(interValFun, 80);let num 0;function interValFun() {num;if (num 12) {imgRef.value.style.backgroundPositionX -${num * 136}px;}} }function handleMouseLeave() {clearInterval(interval.value);let currentPosition parseFloat(imgRef.value.style.backgroundPositionX);const interValConst setInterval(interValFun, 80);function interValFun() {if (currentPosition 0) {imgRef.value.style.backgroundPositionX ${currentPosition}px;} else {clearInterval(interValConst);return;}currentPosition currentPosition 136;} } 最后实现的效果如图 动态图例子
http://www.w-s-a.com/news/755313/

相关文章:

  • 中天建设中瑞物资网站优化建立生育支持政策体系
  • 网站页面的宽度大网站怎样选域名
  • icp网站备案流程wordpress post 405
  • 网站怎样上传到空间重庆有多少网站
  • 用模板建商城购物网站嘉定专业网站建设
  • 网站开发与应用 论文dede手机医院网站模板
  • 织梦 网站栏目管理 很慢自学网页设计难吗
  • 茶文化建设网站的意义平顶山网站建设服务公司
  • 建设网站详细流程南京宣传片制作公司
  • 合肥网站排名什么网站做电气自动化兼职
  • 如何用api做网站交通建设门户网站
  • 阳西住房和城乡规划建设局网站长沙网站seo技巧
  • 长沙知名网站推广手机画设计图软件
  • 顺德公司做网站自己有网站怎么优化
  • 南京网站开发南京乐识专业外贸流程知乎
  • 盐田区住房和建设局网站分类网站有哪些
  • 建一个团购网站WordPress文章字号设置
  • 做漂亮的网站东营网站seo
  • 网站开发摊销做设计哪个网站可以接单
  • 惠州h5网站建设建设公司网站报价
  • 做网站多少钱 优帮云嘉兴五县两区网站建设
  • 三亚旅游网站策划书企业网站建设的定位
  • 网站建设工作台账网站建设的实验结论
  • 商业网站建设平台制作软件的软件
  • 本地网站开发wordpress页面关键词和描述
  • 微网站 合同软件开发培训方案
  • 怎么做淘宝客网站备案广告公司图片大全
  • 微信小程序展示网站建设多少钱做网站用什么软件初二
  • 瀑布流资源网站模板打码网站建设
  • wordpress 支付宝打赏网站视觉优化的意义