了解更多开源请访问:开源基础软件社区https://ost.51cto.com前言既然大家都用QQ、微信、邮箱和其他网络平台交流,大家可能对纸质的媒介和信件的交流方式比较陌生。不要认为字母是过时的东西。它们是80后的情怀,90后的回忆,00后的新宠。它们是经典的代名词。今天,我想实现将这些古老的元素融入到新时代的产品中。项目描述工具:DevEcStudio3.0Beta3主要用到的知识:动画、选项、关键帧官方API链接:动画效果效果展示及实现原理信件由信封上部、信封主体和信封三部分组成信纸,首先通过css实现将三部分组合成一个信封样式,然后根据动画组件方法中的play或cancel方法实现信纸弹出或收回的动画效果,并使用定时器来模拟在信件展开时阅读文本的效果。实施步骤调整信封上下两部分的位置,调整信封和信纸三部分的水平。点击字母后,通过id属性识别获取组件对象并调用animate组件方法,针对不同的id对象调用对应的动画方法。为信封两部分传入展开的新位置,同时为信纸传入新的高度和底部值。使用定时器模拟阅读文字的效果。在判断信封折叠时,调用animate组件的cancel()方法,实现信封收起的效果。使用的官方API选项属性的说明。参数类型默认值说明durationnumber0指定当前动画的运行时间(以毫秒为单位)。easingStringlinear描述了动画的时间曲线,支持的类型为easing的有效值描述见表4。delaynumber0设置动画执行的延迟时间(默认值表示不延迟)。迭代次数|string1设置动画执行的次数。
number代表固定次数,Infinity枚举代表无限次播放。directionstringnormal指定动画的播放方式:
normal:动画正向循环播放;
reverse:动画反向循环播放;反向播放;
alternate-reverse:动画反向交替循环播放,奇数次反向播放,偶数次正向播放。fillstringnone指定动画的开始和结束状态:
none:在动画执行之前或之后不会对目标应用任何样式。
forwards:动画结束后,目标会保持动画结束时的状态(定义在最后一个关键帧)。
backwards6+:动画将在动画延迟期间应用第一个关键帧中定义的值。当动画方向为“正常”或“交替”时应用从关键帧中的值,当动画方向为“反向”或“交替反转”时应用关键帧中的值。
both:动画会遵循前进和后退的规则,从而在两个方向扩展动画属性。关键帧属性说明。属性类型说明framesArray
