wx-wow(微信小程序动效库)

wx-wow
该项目为提供微信小程序一套便捷好用动画执行方案, 通过添加简单的动画类名和一些简单的参数,即可实现想要的动画效果。灵感来源 WOW.js
wx-wow 需要 调试小程序基础库 >2.5
仓库地址: @Five-great/wx-wow
下载
直接通过 git 下载 wx-wow 源代码,并将 src 目录拷贝到自己的项目中
通过 npm 或 cnpm 下载
下载后目录结构为
使用
将 src 目录中所有文件复制到微信小程序目录utils中(wxWOW.js,wxWOW.wxss,wxWOW.wxss)
1. 在 app.js 中引入 wxWOW.js
2. 在 app.wxss 引入wxWOW.wxss ( 动效样式来源自 animate.css(点击查看动效名与效果) )
3. 在需要的页面引入 wxWOW.wxs 并导出模块 命名为 "wx" 同时监听绑定 {{ wxwow }} 改变时触发 WOWChange 函数 执行动画渲染。
4. 在需要加入动效的地方的 class 加入 " {{wx.WOW()}} <动效名称>", 例如 " {{wx.WOW()}} bounceInUp ", 同时需要给该动效分配一个 id 具体通过 {{wx.WOWId()}} 去自动分配到 data-wx-wow-id 上 ,并且确保添加动画的 display 属性为 块状 或行块状,不能为行类样式 如下面的例子 1。
额外参数
此外还可以控制动效的一些过程例如:
动效名称: data-wx-wow-name (bounceInUp , fadeInLeft,…)
动效延时: data-wx-wow-delay ( 300ms , 0.3s, 4s …)
动效持续时间:data-wx-wow-duration ( 300ms , 0.3s, 4s …)
距离可视区域多少开始执行动效: data-wx-wow-offset (整数) ( 0 , 100, 50 …)
动效执行次数: data-wx-wow-iteration ( 1, 5, infinite, …)
升阶配置
若需升阶配置 则需改变设置方式,在 class 加入 " {{wx.WOW()}}" ,同时加入 data-wx-wow-name=“<动效名>” 同时需要给该动效分配一个 id 具体通过 {{wx.WOWId()}} 去自动分配到 data-wx-wow-id 上 ,并且确保添加动画的 display 属性为 块状 或行块状,不能为行类样式 如下面的例子 2
触发实现离场动效
通过触发 wx.WOWOut() 函数,来触发离场动效,需保证 data-wx-wow-name有值,默认为 data-wx-wow-name中相反的动效名(例如 bounceInUp 相反动效为 bounceOutUp)。触发回调对应逻辑层 wxWOWTap(可以执行跳转页面或其他处理)
可选配置
此外还可以控制动效的一些过程例如:
动效名称: data-wx-wow-outName [默认data-wx-wow-name取相反动效 ] (bounceOutUp , fadeOutLeft,…)
动效延时: data-wx-wow-outDelay [默认与 data-wx-wow-delay 相同 ] ( 300ms , 0.3s, 4s …)
动效持续时间:data-wx-wow-outDuration [默认与 data-wx-wow-duration 相同 ] ( 300ms , 0.3s, 4s …)
动效执行次数: data-wx-wow-outIteration [默认与 data-wx-wow-iteration 相同 ] ( 1, 5, infinite, …)
设置页面重复动效 (进入页面重新刷新执行动效)
其他设置
设置某单个动效,重复执行(优先级高于设置页面重复动效),给 类名 class 加入 wxwow-repeat
设置某单个动效,仅仅执行一次(优先级高于设置页面重复动效),给 类名 class 加入 wxwow-once
Demo
https://developers.weixin.qq.com/s/llE4M7m67rnC
应用实列
欢迎 点赞 ,Fork , 提 Issues
版权声明: 本文为 InfoQ 作者【Five】的原创文章。
原文链接:【http://xie.infoq.cn/article/7fedc9ac1ba6d3d846fd588d6】。
本文遵守【CC-BY 4.0】协议,转载请保留原文出处及本版权声明。










评论