微信小程序实现自定义加载图标功能


Posted in Javascript onJuly 19, 2018

效果图

微信小程序实现自定义加载图标功能

实现思路

1.首先通过HTML+CSS实现加载动画的静态效果;

2.根据需求给每个动画设计不同的动画效果。

例如第一个加载图标的静态绘制

1、首先确定动画的盒子宽高;

2、设置盒子中每一个长方形的宽高以及定位(注意:此处需要将长方形的旋转中心点移动到长方形的右侧边终点,方便后期以该点旋转。);

3、通过长方形盒子的伪元素,设置显示的长方形背景和宽高,同时进行定位。

4、由于在第二步的时候,已经将旋转中心移动,此处我们直接对每一个盒子中长方形进行旋转(注意:旋转角度 = 360 / 盒子中长方形个数)。

.circle-line{
  width: 100px;
  height: 100px;
  display: inline-block;
  position: relative;
}
.circle-line text{
  display: block;
  width: 50%;
  height: 5px;
  opacity: .7;
  position: absolute;
  top: calc(50% - 2.5px);
  left: 0px;
  transform-origin: center right; 
}
.circle-line text::before{
  content: '';
  display: block;
  width: 15px;
  height: 5px;
  position: absolute;
  top: 0;
  right: 10px;
  background-color: blue;
}
.circle-line text:nth-child(1){
  transform: rotate(0deg);
}
.circle-line text:nth-child(2){
  transform: rotate(45deg);
}
.circle-line text:nth-child(3){
  transform: rotate(90deg);
}
.circle-line text:nth-child(4){
  transform: rotate(135deg);
}
.circle-line text:nth-child(5){
  transform: rotate(180deg);
}
.circle-line text:nth-child(6){
  transform: rotate(225deg);
}
.circle-line text:nth-child(7){
  transform: rotate(270deg);
}
.circle-line text:nth-child(8){
  transform: rotate(315deg);
}

动画制作

观察发现动画只是针对每个长方形的透明度进行改变,所以动画采用从0.05到0.9的透明度循环改变。

@keyframes circle {
  0%{
    opacity: 0.05;
  }
  100%{
    opacity: 0.9;
  }
}

进行动画绑定

.circle-line text{
  animation: circle 1.5s linear infinite; 
}

动画绑定完成,发现所有的整个图标一起显示消失,那么也就是缺少了对单个个体的动画处理,延迟动画时间,使其依次渐变。

单个动画处理

.circle-line text:nth-child(1){
  animation-delay: 0.2s;
}
.circle-line text:nth-child(2){
  animation-delay: 0.4s;
}
.circle-line text:nth-child(3){
  animation-delay: 0.6s;
}
.circle-line text:nth-child(4){
  animation-delay: 0.8s;
}
.circle-line text:nth-child(5){
  animation-delay: 1s;
}
.circle-line text:nth-child(6){
  animation-delay: 1.2s;
}
.circle-line text:nth-child(7){
  animation-delay: 1.4s;
}
.circle-line text:nth-child(8){
  animation-delay: 1.6s;
}

注意:单个动画延迟的时间必须超过动画执行的总时间,防止一个动画执行完成后的卡顿。

总结

以上所述是小编给大家介绍的微信小程序实现自定义加载图标功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
ExtJs使用总结(非常详细)
Mar 22 Javascript
多个js与css文件的合并方法详细说明
Dec 26 Javascript
jQuery统计上传文件大小的方法
Jan 24 Javascript
jquery实现textarea 高度自适应
Mar 11 Javascript
JavaScript中的getTime()方法使用详解
Jun 10 Javascript
AngularJS单选框及多选框实现双向动态绑定
Jan 13 Javascript
jQuery实现元素拖拽并cookie保存顺序的方法
Feb 20 Javascript
javascript瀑布流式图片懒加载实例
Jun 28 Javascript
jQuery ajax 当async为false时解决同步操作失败的问题
Nov 18 Javascript
基于Bootstrap的网页设计实例
Mar 01 Javascript
微信小程序button组件使用详解
Jan 31 Javascript
一篇文章弄懂javascript中的执行栈与执行上下文
Aug 09 Javascript
Angular5集成eventbus的示例代码
Jul 19 #Javascript
微信小程序实现弹出菜单
Jul 19 #Javascript
微信小程序实现之手势锁功能实例代码
Jul 19 #Javascript
React组件重构之嵌套+继承及高阶组件详解
Jul 19 #Javascript
微信小程序实现折叠展开效果
Jul 19 #Javascript
详解Angularjs 自定义指令中的数据绑定
Jul 19 #Javascript
微信小程序实现天气预报功能
Jul 18 #Javascript
You might like
利用php来自动调用不同服务器上的flash
2006/10/09 PHP
PHP简单实现“相关文章推荐”功能的方法
2014/07/19 PHP
php中的观察者模式简单实例
2015/01/20 PHP
smarty模板引擎使用内建函数foreach循环取出所有数组值的方法
2015/01/22 PHP
关于Laravel Route重定向的一个注意点
2017/01/16 PHP
PHP实现的简单异常处理类示例
2017/05/04 PHP
Laravel-admin之修改操作日志的方法
2019/09/30 PHP
在Javascript里访问SharePoint列表数据的实现方法
2011/05/22 Javascript
jQuery制作简洁的多级联动Select下拉框
2014/12/23 Javascript
Javascript URI 解析介绍
2015/03/15 Javascript
JavaScript获取浏览器信息的方法
2015/11/20 Javascript
Javascript实现图片不间断滚动的代码
2016/06/22 Javascript
Angular设置title信息解决SEO方面存在问题
2016/08/19 Javascript
js实现九宫格的随机颜色跳转
2017/02/19 Javascript
设置cookie指定时间失效(实例代码)
2017/05/28 Javascript
基于原生js运动方式关键点的总结(推荐)
2017/10/01 Javascript
深入理解vue中的slot与slot-scope
2019/04/22 Javascript
JavaScript实现鼠标移入随机变换颜色
2020/11/24 Javascript
[01:04]DOTA2:伟大的Roshan雕塑震撼来临
2015/01/30 DOTA
Pythont特殊语法filter,map,reduce,apply使用方法
2016/02/27 Python
python3操作mysql数据库的方法
2017/06/23 Python
Python 数值区间处理_对interval 库的快速入门详解
2018/11/16 Python
flask/django 动态查询表结构相同表名不同数据的Model实现方法
2019/08/29 Python
python将图片转base64,实现前端显示
2020/01/09 Python
解决pycharm中导入自己写的.py函数出错问题
2020/02/12 Python
Python+unittest+requests+excel实现接口自动化测试框架
2020/12/23 Python
应届生英语教师求职信
2013/11/05 职场文书
2014的自我评价
2014/01/13 职场文书
个人简历自我评价范文
2014/02/04 职场文书
篮球兴趣小组活动总结
2014/07/07 职场文书
学习党的群众路线教育实践活动心得体会范文
2014/11/03 职场文书
稽核岗位职责
2015/02/10 职场文书
2015入党自传书范文
2015/06/26 职场文书
小学班主任工作随笔
2015/08/15 职场文书
2016参观监狱警示教育活动心得体会
2016/01/15 职场文书
熟背这些句子,让您的英语口语突飞猛进(135句)
2019/09/06 职场文书