vue+canvas实现炫酷时钟效果的倒计时插件(已发布到npm的vue2插件,开箱即用)


Posted in Javascript onNovember 05, 2018

前言:

此事例是在vue组件中,使用canvas实现倒计时动画的效果。其实,实现效果的逻辑跟vue没有关系,只要读懂canvas如何实现效果的这部分逻辑就可以了

canvas动画的原理:利用定时器,给定合理的帧数,不断的清除画布,再重绘图形,即呈现出动画效果。 

让我们先看下效果

  说明:此gif清晰度很低,因为转成gif图的时候,质量受损,帧数减少,所以倒计时转到红色时候看起来变的很模糊。但是实际在浏览器上效果全程都是很清晰和连贯的

vue+canvas实现炫酷时钟效果的倒计时插件(已发布到npm的vue2插件,开箱即用)

使用

npm
 npm install vue-canvas-countdown --save-dev
es6 import
 import countDown from 'vue-canvas-countdown'

源码、demo、使用方法请参考github:https://github.com/Damon0820/vue-countdown

左手右手一个慢动作

说明:扇形颜色是渐变的(仔细看图:扇形逆时针方向渐变颜色,内侧浅,外侧深)

 vue+canvas实现炫酷时钟效果的倒计时插件(已发布到npm的vue2插件,开箱即用)

vue+canvas实现炫酷时钟效果的倒计时插件(已发布到npm的vue2插件,开箱即用)

vue+canvas实现炫酷时钟效果的倒计时插件(已发布到npm的vue2插件,开箱即用)

动画步骤分析:假如设定倒计时总时间为15s, 变黄色时机为10s,变红色时机为5s。

1、开始倒计时后颜色为绿色。绿色含义是:倒计时的时间离结束时间还很长。

2、10s后变黄色。黄色的含义是:倒计时的时间离结束时间挺近了,起警告作用。动画中,出现快速旋转的扇形。

3、5s后变红色。红色的含义是:倒计时的时间马上就要结束了,起强烈警告作用。动画中,快速旋转的扇形速度加快。

4、0s倒计时结束。动画消失。静态圆形框中显示提示文字。

修炼js宝典,get canvas技能

    之前对于canvas一窍不通,网上查了资料,介绍api的时候过于简单,也不好理解,看别人写的示例代码,更是懵逼。而后,回归原始,修炼经典的《JavaScript高级程序设计》这本js宝典。书本二三十页的介绍canvas部分,系统的学习了一下。边看边写效果,20多页的书看完了,效果也写出来了。对于新手,我推荐找到系统介绍canvas的资料,先花一两个先熟悉下canvas的api,然后实现效果就是分分钟的事了

总结

以上所述是小编给大家介绍的vue+canvas实现炫酷时钟效果的倒计时插件(已发布到npm的vue2插件,开箱即用),希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
网站页面自动跳转实现方法PHP、JSP(上)
Aug 01 Javascript
借助script进行Http跨域请求:JSONP实现原理及代码
Mar 19 Javascript
全面兼容的javascript时间格式化函数(比较实用)
May 14 Javascript
JavaScript实现判断图片是否加载完成的3种方法整理
Mar 13 Javascript
JS获取Table中td值的方法
Mar 19 Javascript
js数组操作方法总结(必看篇)
Nov 22 Javascript
微信小程序实战之登录页面制作(5)
Mar 30 Javascript
使用Electron构建React+Webpack桌面应用的方法
Dec 15 Javascript
JS实现继承的几种常用方式示例
Jun 22 Javascript
JavaScript获取当前url路径过程解析
Dec 27 Javascript
vue中重定向redirect:‘/index‘,不显示问题、跳转出错的完美解决
Sep 28 Javascript
5种方法告诉你如何使JavaScript 代码库更干净
Sep 15 Javascript
基于vue2的canvas时钟倒计时组件步骤解析
Nov 05 #Javascript
基于Vue2实现简易的省市区县三级联动组件效果
Nov 05 #Javascript
使用vue2实现带地区编号和名称的省市县三级联动效果
Nov 05 #Javascript
vue router的基本使用和配置教程
Nov 05 #Javascript
微信小程序tabbar底部导航
Nov 05 #Javascript
详解webpack+ES6+Sass搭建多页面应用
Nov 05 #Javascript
浅谈vux之x-input使用以及源码解读
Nov 04 #Javascript
You might like
常用星际术语索引(新手指南)
2020/03/04 星际争霸
php中长文章分页显示实现代码
2012/09/29 PHP
PHP版QQ互联OAuth示例代码分享
2015/07/05 PHP
微信支付开发订单查询实例
2016/07/12 PHP
laravel项目利用twemproxy部署redis集群的完整步骤
2018/05/11 PHP
PHP观察者模式实例分析【对比JS观察者模式】
2019/05/22 PHP
javascript void(0)的妙用
2009/10/21 Javascript
Jquery焦点与失去焦点示例应用
2014/06/10 Javascript
jQuery使用fadeout实现元素渐隐效果的方法
2015/03/27 Javascript
jquery性能优化高级技巧
2015/08/24 Javascript
JS获取数组最大值、最小值及长度的方法
2015/11/24 Javascript
AngularJS 购物车全选/取消全选功能的实现方法
2017/08/14 Javascript
Node.js npm命令运行node.js脚本的方法
2018/10/10 Javascript
node.js实现为PDF添加水印的示例代码
2018/12/05 Javascript
layui动态渲染生成select的option值方法
2019/09/23 Javascript
JavaScript WeakMap使用详解
2021/02/05 Javascript
介绍Python的Django框架中的静态资源管理器django-pipeline
2015/04/25 Python
python 类详解及简单实例
2017/03/24 Python
python安装Scrapy图文教程
2017/08/14 Python
python 字典操作提取key,value的方法
2019/06/26 Python
Python 占位符的使用方法详解
2019/07/10 Python
使用TensorFlow-Slim进行图像分类的实现
2019/12/31 Python
Python基于numpy模块实现回归预测
2020/05/14 Python
django 模版关闭转义方式
2020/05/14 Python
Python调用C语言程序方法解析
2020/07/07 Python
css3 伪类选择器快速复习小结
2019/09/10 HTML / CSS
医药专业推荐信
2013/11/15 职场文书
网络编辑岗位职责范本
2014/02/10 职场文书
应用外语系自荐信
2014/06/26 职场文书
管理工程专业求职信
2014/08/10 职场文书
政风行风自查自纠报告
2014/10/21 职场文书
业务员岗位职责范本
2015/04/03 职场文书
运动会通讯稿100字
2015/07/20 职场文书
2016大学生入党积极分子心得体会
2016/01/06 职场文书
MySQL GRANT用户授权的实现
2021/06/18 MySQL
分析并发编程之LongAdder原理
2021/06/29 Java/Android