想着用js实现一个画线动画,借助Canvas实现了。动画效果:

手机端访问 https://sagitarioo.github.io/Personal/htmlCode/linePaint/lineShow.html

电脑端访问 https://sagitarioo.github.io/Personal/htmlCode/linePaint/lineShow01.html

手机与电脑显示区别主要在于屏幕长宽比例。

实现代码:

<!DOCTYPE html>
<html>
<head><title>lineShowOnPhone</title><meta charset="utf-8"><meta name="viewport" content="width=device-width,initial-scale=1"><script src="https://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"></script>
</head>
<body>
<style type="text/css">#vas{width: 100%;border: 1px solid #f0f0f0;margin: auto;}
</style>
<canvas id="vas"></canvas>
<script type="text/javascript">var canvas=$("#vas");canvas[0].width=1000;canvas[0].height=1000;var context=canvas[0].getContext('2d');context.lineWidth=4;context.strokeStyle='#f00';context.moveTo(500,500);var intervals,intervalss;var i=1;var x=500,y=500;var len=50;//边距var m=500,n=500,p=500,q=500;var times=21//circle timesvar intervalTime=1;//timevar speed=10;//speedvar d=new Date();var stime=d.getTime();intervals=setInterval(draw,100);function draw(){x=p-Math.pow(-1,i)*len*i;if((Math.pow(-1,i)<0)&&(m<x) || (Math.pow(-1,i)>0)&&(m>x)){m=m-speed*Math.pow(-1,i);context.lineTo(m,y);context.stroke();}else{clearInterval(intervals);if(i<times){intervalss=setInterval(draws,intervalTime);p=p-Math.pow(-1,i)*len*i;}var de=new Date();var etime=de.getTime();var runtime=etime-stime;console.log("run time="+runtime);}}function draws(){y=q-Math.pow(-1,i)*len*i;if((Math.pow(-1,i)<0)&&(n<y) || (Math.pow(-1,i)>0)&&(n>y)){n=n-speed*Math.pow(-1,i);context.lineTo(x,n);context.stroke();}else{clearInterval(intervalss);intervals=setInterval(draw,intervalTime);q=q-Math.pow(-1,i)*len*i;i++;}}
</script>
</body>
</html>

基于Canvas的画线动画效果相关推荐

  1. canvas实现点线动画效果

    效果图 需求分析 点随机产生并向随机方向以随机的速度匀速移动 未点击时,点的总数保持不变:点击时在点击的位置产生数个新的点 点与点之间在一定距离内有细线连接 鼠标在画面中移动时,能够与其他点产生互动 ...

  2. 微信小程序动态点赞php,微信小程序小组件 基于Canvas实现直播点赞气泡效果

    这篇文章主要为大家详细介绍了微信小程序小组件,基于Canvas实现直播点赞气泡效果,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 先发Canvas实现直播点赞气泡效果图: 实现细节: 1.JS:d ...

  3. 微信小程序动态点赞php,微信小程序小组件基于Canvas实现直播点赞气泡效果

    这篇文章主要为大家详细介绍了微信小程序小组件,基于Canvas实现直播点赞气泡效果,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 先发Canvas实现直播点赞气泡效果图: 实现细节: 1.JS: ...

  4. 基于canvas制作绚丽的倒计时效果

    基于canvas制作绚丽的倒计时效果 一.先看下效果 项目设计: 数字渲染:数字是存储在一个三维数组里面,通过每次传入一个数字,来取出这个数字对应的点阵模型,这个模型是一个二维数组,有圆点的地方值为1 ...

  5. Unity在Canvas上画线(Draw Line)实现

    # 前言 目前Unity官方提供的UI扩展包中包含了UILineRenderer组件,本篇实现与UILineRenderer实现一致,主要讲解其基本使用与实现过程.不想看的同学可以直接下载官方扩展包. ...

  6. android陀螺仪实现背景移动demo,基于HTML5陀螺仪实现移动动画效果

    这次给大家带来基于HTML5陀螺仪实现移动动画效果,基于HTML5陀螺仪实现移动动画效果的注意事项有哪些,下面就是实战案例,一起来看一下. 最近用ofo小黄车App的时候,发现以前下方扫一扫变成了一个 ...

  7. Canvas科幻网状波浪动画效果

    下载地址Canvas科幻网状波浪动画效果是一款正弦波弧度波浪动画,像素块波浪特效. dd:

  8. 基于Rebound制造绚丽的动画效果-入门篇

    基于Rebound制造绚丽的动画效果-入门篇 Rebound是什么? Rebound是一个来自 Facebook 公司的 Java物理和动画库.Rebound spring 模型可用于创建动画,让你感 ...

  9. CSS:文字下波浪线动画效果

    之前有至少5个人在评论中询问我文章中链接hover时候波浪下划线动画是怎么实现的,类似下图gif示意: 这里就介绍下是如何实现的. 有两种实现方法,各有优劣. 一.使用径向渐变纯CSS实现 就是使用径 ...

最新文章

  1. ImageNet验证集6%的标签都是错的,MIT:十大常用数据集没那么靠谱
  2. 5.7 随机采样最小二乘法
  3. 目标检测系列(三)——SPPnet
  4. 计算机程序设计vb课后题,《VB程序设计》课后题答案
  5. Java----前端验证之验证码额实现
  6. Python3连接MySQL
  7. 【linux内核分析与应用-陈莉君】设备驱动模型
  8. 云开发魔都团长头像制作微信小程序源码/带流量主
  9. Jenkins的windows10 从节点经常性掉线问题解决
  10. 简单的美团-web前端页面
  11. 通过cocos裁切图片,将大图分为小图
  12. 王者荣耀转系统服务器繁忙,换手机党的福音,王者荣耀开启跨系统角色转移,但这些问题要注意...
  13. 宝塔安装的数据库外网无法访问
  14. python中的path的使用
  15. torch.mannul_seed()使用和踩坑总结
  16. 笔记 | Java 虚拟机
  17. 征服者驱动程序下载_征服者纸上的五种美丽免费字体
  18. 内网靶场_从自做到拿下-攻击篇
  19. C#实现自动下载yunfile文件
  20. java中什么算是重载,java中什么是重载

热门文章

  1. 被美国列入恶名市场:拼多多到底做错了什么?
  2. 实战Practice丨拉动DevOps持续交付的三匹马 —— 快速交付实践总结与思考
  3. 使用netoffice时出现一下问题处理方法
  4. 基因数据处理32之Avocado运行记录(人造数据集)
  5. C罗“登陆”亚平宁半年:英雄迟暮还是越老越妖?
  6. Error adding module to project:null
  7. 深度学习主机环境配置2---显卡配置:ubuntu-16.04.2-desktop-amd64.iso + GTX1070TI
  8. springboot junit测试时环境变量问题 idea
  9. 程序员的爱情数字表白
  10. 利用python画钻石_python多继承(钻石继承)问题和解决方法简单示例