作者:涅槃WB | 来源:互联网 | 2023-08-20 14:38
在不久之前,看到一个比较有意思的小程序,就是静神木鱼,可以实现在线敲木鱼,自动敲木鱼,手盘佛珠,静心颂钵的,下面就来揭秘如何实现这个小程序中敲木鱼的累加向上漂浮动画
前言
在不久之前,看到一个比较有意思的小程序,就是静神木鱼,可以实现在线敲木鱼,自动敲木鱼,手盘佛珠,静心颂钵的
整个小程序功能比较小巧,大道至简,曾风靡过一阵的,无论在App应用市场上,还是小程序里,一些开发者都赚得盆满钵满,用于缓解当代年轻人的一个焦虑,佛系解压,算是一个娱乐,你可能觉得这种应用没有什么卵用,离商业很遥远,但恰恰相反,在商业拓展延伸上,依旧有人愿意付费使用
下面就来揭秘实现一下这个小程序中敲木鱼的示例的
具体代码
静神木鱼
{{count}}功德+1
敲击
{{isVoince == true?'非静音':'静音'}}
{{OnOff== true?'自动':'非自动'}}
清除
上面的一个小例子虽然很小,但是它囊括了一些知识,想要实现这个效果,那么需要知道的
分析
- 如何实现控制数字的累加,并且解决字符串
+
拼接的问题(具体解决使用parseInt()
即可)
- 如何实现自动的累加,需要知道设置定时器
setInterval
,以及清除定时器clearInterval
- 一个控件控制元素状态的变化,开关的设置
- 在刷新页面时,下次进来仍然保留上一次的状态,则需要使用本地缓存
localStorage
,以及清除指定的本地缓存localStorage.removeItem('key')
- 如何控制音频
audio
元素的播放(play
)和暂停(pause
)
- 想要实现累加向上漂浮动画,则需要使用
css3
中的动画关键帧
上面控制功德加+1
,使用了vue
当中的v-show
结合css3
的动画关键帧,以及结合透明度去控制的
需要注意的是单纯的借用v-show
并不能完全控制,还需要借用一个setTimeout
,先隐藏,然后在显示,以及过了多长时间,最后让元素隐藏
在微信小程序当中,实现的逻辑也是相似的,是使用了微信的本地存储功能的,动画的话,使用了小程序自带的动画API就可以实现的