摘要:哈哈动态效果是用来实现的,,至于进度则是用控制属性实现的。。代码如下首先看下结构加油开始滤镜效果对于不熟悉的,先看下基本教程接下来看下样式最后就脚本了,代码不多,也很简单,就是设置属性圆环进度条谢谢关注
我们要实现的效果:
是不是有点感觉。。。哈哈
动态效果是用css3来实现的,,至于进度则是用js控制stroke-dasharray属性实现的。。
代码如下:
首先看下HTML结构
1143/1566 加油开始 99%
滤镜效果
对于svg不熟悉的,先看下SVG基本教程http://www.runoob.com/svg/svg...
接下来看下CSS样式
.zh-rt-main{position: relative; width: 436px; height: 436px; margin: -36px auto 0;} .zh-rt-main .zh-node{display: block; position: absolute; z-index: 2; width: 116px; font-size: 12px; text-align: center; opacity: 0;} .zh-rt-main .zh-node:after{content: ""; display: block; width: 100%; height: 1px; margin-top: 5px;} .zh-rt-main .zh-node .zh-name, .zh-rt-main .zh-node .zh-percent-num{display: block;} .zh-rt-main .zh-node-1{left: 160px; top: 40px; -webkit-animation: fadeIn .3s ease-out .1s forwards; animation: fadeIn .3s ease-out .1s forwards;} .zh-rt-main .zh-node-2{right: 70px; top: 82px; -webkit-animation: fadeIn .3s ease-out .2s forwards; animation: fadeIn .3s ease-out .2s forwards;} .zh-rt-main .zh-node-3{right: 20px; top: 138px; -webkit-animation: fadeIn .3s ease-out .3s forwards; animation: fadeIn .3s ease-out .3s forwards;} .zh-rt-main .zh-node-4{right: 0; top: 195px; -webkit-animation: fadeIn .3s ease-out .4s forwards; animation: fadeIn .3s ease-out .4s forwards;} .zh-rt-main .zh-node-5{right: 20px; bottom: 135px; -webkit-animation: fadeIn .3s ease-out .5s forwards; animation: fadeIn .3s ease-out .5s forwards;} .zh-rt-main .zh-node-6{right: 70px; bottom: 75px; -webkit-animation: fadeIn .3s ease-out .6s forwards; animation: fadeIn .3s ease-out .6s forwards;} .zh-rt-main .zh-node-7{left: 160px; bottom: 31px; -webkit-animation: fadeIn .3s ease-out .7s forwards; animation: fadeIn .3s ease-out .7s forwards;} .zh-rt-main .zh-node-8{left: 70px; bottom: 75px; -webkit-animation: fadeIn .3s ease-out .9s forwards; animation: fadeIn .3s ease-out .9s forwards;} .zh-rt-main .zh-node-9{left: 20px; bottom: 135px; -webkit-animation: fadeIn .3s ease-out .8s forwards; animation: fadeIn .3s ease-out .8s forwards;} .zh-rt-main .zh-node-10{left: 0; top: 195px; -webkit-animation: fadeIn .3s ease-out 1s forwards; animation: fadeIn .3s ease-out 1s forwards;} .zh-rt-main .zh-node-11{left: 20px; top: 138px; -webkit-animation: fadeIn .3s ease-out 1.1s forwards; animation: fadeIn .3s ease-out 1.1s forwards;} .zh-rt-main .zh-node-12{left: 70px; top: 82px; -webkit-animation: fadeIn .3s ease-out 1.2s forwards; animation: fadeIn .3s ease-out 1.2s forwards;}
最后就JS脚本了,代码不多,也很简单,就是设置stroke-dasharray属性
// 圆环进度条 function ringProcessBar() { var radius = 120; var circumference = 2 * radius * Math.PI; $(".zh-rt-main").each(function() { var curProcess = parseFloat($(this).find(".zh-svg-box .zh-percent").text()).toFixed(2) / 100; var dasharray1 = (circumference*(1-curProcess)).toFixed(2); var dasharray2 = (circumference*curProcess).toFixed(2); $(this).find(".zh-svg-box svg circle:eq(1)").attr("stroke-dasharray", dasharray2+","+dasharray1); }); } ringProcessBar();
谢谢关注~
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/81668.html
摘要:环形进度条的问题,网上有很多的,也有各种不同的实现方式,很棒的实现也有很多,我这自己做一下一方面是想开阔一下自己的思路,一方面好久没看和的东西了,基础的拿来熟悉下。 环形进度条的问题,网上有很多的demo,也有各种不同的实现方式,很棒的实现也有很多,我这自己做一下一方面是想开阔一下自己的思路,一方面好久没看SVG和Canvas的东西了,基础的拿来熟悉下。 DIV + CSS3 这个是最...
摘要:效果图怎么实现这样一个圆环进度条的效果呢,可以使用等等方式,今天我们来说下使用怎么来实现。使用才实现圆环进度还是很简单的,还不需要考虑兼容性,关于可以看张鑫旭大神的日志 效果图 showImg(https://segmentfault.com/img/bV3DbY?w=315&h=300); 怎么实现这样一个圆环进度条的效果呢,可以使用canvas、svg、GIF等等方式,今天我们来说...
摘要:效果图怎么实现这样一个圆环进度条的效果呢,可以使用等等方式,今天我们来说下使用怎么来实现。使用才实现圆环进度还是很简单的,还不需要考虑兼容性,关于可以看张鑫旭大神的日志 效果图 showImg(https://segmentfault.com/img/bV3DbY?w=315&h=300); 怎么实现这样一个圆环进度条的效果呢,可以使用canvas、svg、GIF等等方式,今天我们来说...
阅读 1271·2021-10-08 10:04
阅读 1855·2021-09-04 16:40
阅读 2517·2019-08-30 13:21
阅读 2254·2019-08-29 15:10
阅读 2815·2019-08-29 12:35
阅读 1164·2019-08-26 17:41
阅读 3045·2019-08-26 17:03
阅读 1109·2019-08-26 12:01