radialIndicator.js的使用

radialIndicator是一个简单轻巧的圆形指示器/进度条的插件
插件的上手比较容易,这里记录下在指示器内有图标时做进度动画的使用,具体效果如下:

环形进度条内带图片的效果

第一步引入radialIndicator.js
第二步做环形进度条的HTML结构

<div id="indicatorContainerWrap">
      <div id="indicatorContainer"></div>
      <img src="环形内图片地址"  id="prgLogo"/>
</div>

第三步进行初始化

let radialObj = radialIndicator('#indicatorContainer', {
      radius: 59,
      barColor : '#facb00',
      barWidth : 10,
      initValue : 0,
      maxValue: 30,
      frameNum: 3000,
      displayNumber: false
    });
radialObj.value(30);

插件默认的设置可能不是我们想要的,因此在实例化时可以对一些参数项进行配置,因此需要对配置项进行下说明;

配置项 说明
barColor 环形进度条的颜色
barWidth 环形进度条的宽度
radius 环形内圆的半径值
displayNumber 环形内数字(进度)是否显示
initValue 进度的初始值
minValue 整个环能显示的进度下限值
maxValue 整个环能显示的进度上限值

另外还有frameNum和frameTime两个参数,分别表示整个圆能分成多少帧和从一帧到另一帧所用的时间(单位是毫秒);

这两个参数目前用到代码里会导致一些其他问题,在网上也没搜索到相应的实例应用;
另:据测试frameNum,frameTime需要和value()方法配合使用,如果和animate()方法一块用的话,进度条是不动的。
根据文档发现,默认的帧数说是500帧,每帧动画时间是10ms;也就是说进度环从minValue到maxValue的时间是5s(用animate()方法的话)

如果让进度条动起来还需要一个定时器

let loadingNum = 1;
let loadingTimer = setInterval(function () {
      if (loadingNum > 30) {
        loadingNum = 1;
        radialObj.value(loadingNum);
      } else {
        radialObj.animate(loadingNum);
        loadingNum += 1;
      }
    }, 1000);

radialObj.value()和radialObj.animate()的区别,用value方法和animate()都是改变进度的值,animate是用动画很圆润的改变,而value()是生硬的改动;

总结
这样环形进度条就动起来;但是会有写停顿,主要原因是,走完进度环设置时间时30s,也就是说比默认的时间超出了6倍,所以会看起来不顺滑;

引用

https://github.com/s-yadav/radialIndicator
http://ignitersworld.com/lab/radialIndicator.htm
http://www.jq22.com/yanshi4495

最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 1、通过CocoaPods安装项目名称项目信息 AFNetworking网络请求组件 FMDB本地数据库组件 SD...
    阳明AI阅读 16,392评论 3赞 119
  • 超常月亮传言久,戌岁芳容意美痴。 妆态红蓝银性染,体型钩半镜情移。 百年不遇梦中想,一夜相逢屏内奇。 千古天文说尘...
    宇宙主人阅读 354评论 1赞 3
  • 1.利益接合部,是指双方利益不同的地方。双方共同利益很小,利益不同的地方很大,这就叫“利益接合部大”。反之,共同利...
    琢磨概念者阅读 1,053评论 0赞 1
  • 昨晚没在寝室住,跑到外面去了。早就记不清这是第几次的为了她而感到绝望了。明明什么事情都在尽力的去做,但是最后却...
    韩雨逢阅读 111评论 0赞 0
  • 面向对象编程 参考廖雪峰的Python教程 面向对象编程-------Object Oriented Progra...
    Treehl阅读 283评论 0赞 0

友情链接更多精彩内容