微信小程序开发animation心跳动画效果

本文实例为大家分享了微信小程序开发animation心跳动画,供大家参考,具体内容如下

1、微信小程序开发animation心跳动画

wxml文件中:

<view class="bottomViewItem">
  <view class="bottomMiddleHeaderView" bindtap="voteClick" data-id="value">
   <view class="bottomMiddleHeaderItem" animation="{{animationMiddleHeaderItem}}">
   <!-- 心跳 -->
   <view class="bottomMiddleHeaderItemSubView">
    <image src="/images/detail_vote_heart.png" style="width:32rpx; height:32rpx;" animation="{{animationMiddleHeaderItem}}"></image>
   </view>
   <!-- 投票文字 -->
   <view class="bottomMiddleHeaderItemSubView">投票</view>
   </view>
  </view>
 </view>

js文件中:

// 页面渲染完成
 onReady: function () {
  var circleCount = 0;
  // 心跳的外框动画
  this.animationMiddleHeaderItem = wx.createAnimation({
  duration:1000, // 以毫秒为单位
  /**
  * http://cubic-bezier.com/#0,0,.58,1
  * linear 动画一直较为均匀
  * ease 从匀速到加速在到匀速
  * ease-in 缓慢到匀速
  * ease-in-out 从缓慢到匀速再到缓慢
  *
  * http://www.tuicool.com/articles/neqMVr
  * step-start 动画一开始就跳到 100% 直到动画持续时间结束 一闪而过
  * step-end 保持 0% 的样式直到动画持续时间结束  一闪而过
  */
  timingFunction: 'linear',
  delay: 100,
  transformOrigin: '50% 50%',
  success: function (res) {
  }
  });
  setInterval(function() {
  if (circleCount % 2 == 0) {
   this.animationMiddleHeaderItem.scale(1.15).step();
  } else {
   this.animationMiddleHeaderItem.scale(1.0).step();
  }
  this.setData({
   animationMiddleHeaderItem: this.animationMiddleHeaderItem.export()
  });
  circleCount++;
  if (circleCount == 1000) {
   circleCount = 0;
  }
  }.bind(this), 1000);
 },

2、微信显示倒计时

wxml文件中:

<!--倒计时 -->
 <view class="countDownTimeView countDownAllView" >
 <view class="voteText countDownTimeText">{{countDownDay}}天</view>
 <view class="voteText countDownTimeText">{{countDownHour}}时</view>
 <view class="voteText countDownTimeText">{{countDownMinute}}分</view>
 <view class="voteText countDownTimeText">{{countDownSecond}}秒</view>
 </view>

js文件中:

Page( {
 data: {
 windowHeight: 654,
 maxtime: "",
 isHiddenLoading: true,
 isHiddenToast: true,
 dataList: {},
 countDownDay: 0,
 countDownHour: 0,
 countDownMinute: 0,
 countDownSecond: 0,
 },
 //事件处理函数
 bindViewTap: function() {
 wx.navigateTo( {
  url: '../logs/logs'
 })
 },
 onLoad: function() {
 this.setData( {
  windowHeight: wx.getStorageSync( 'windowHeight' )
 });
 },
 // 页面渲染完成后 调用
 onReady: function () {
 var totalSecond = 1505540080 - Date.parse(new Date())/1000;
 var interval = setInterval(function () {
  // 秒数
  var second = totalSecond;
  // 天数位
  var day = Math.floor(second / 3600 / 24);
  var dayStr = day.toString();
  if (dayStr.length == 1) dayStr = '0' + dayStr;
  // 小时位
  var hr = Math.floor((second - day * 3600 * 24) / 3600);
  var hrStr = hr.toString();
  if (hrStr.length == 1) hrStr = '0' + hrStr;
  // 分钟位
  var min = Math.floor((second - day * 3600 *24 - hr * 3600) / 60);
  var minStr = min.toString();
  if (minStr.length == 1) minStr = '0' + minStr;
  // 秒位
  var sec = second - day * 3600 * 24 - hr * 3600 - min*60;
  var secStr = sec.toString();
  if (secStr.length == 1) secStr = '0' + secStr;
  this.setData({
  countDownDay: dayStr,
  countDownHour: hrStr,
  countDownMinute: minStr,
  countDownSecond: secStr,
  });
  totalSecond--;
  if (totalSecond < 0) {
  clearInterval(interval);
  wx.showToast({
   title: '活动已结束',
  });
  this.setData({
   countDownDay: '00',
   countDownHour: '00',
   countDownMinute: '00',
   countDownSecond: '00',
  });
  }
 }.bind(this), 1000);
 },
 //cell事件处理函数
 bindCellViewTap: function (e) {
 var id = e.currentTarget.dataset.id;
 wx.navigateTo({
  url: '../babyDetail/babyDetail?id=' + id
 });
 }
}) 

效果图:

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • 微信小程序 小程序制作及动画(animation样式)详解

    微信小程序制作 实现效果图: 微信小程序也已出来有一段时间了,最近写了几款微信小程序项目,今天来说说感受. 首先开发一款微信小程序,最主要的就是针对于公司来运营的,因为,在申请appid(微信小程序ID号)时候,需要填写相关的公司认证信息如,营业执照等 再次就是用一个未曾开通过公众号的QQ号或微信号来注册一个微信小程序号. 最后,下载微信小程序开发工具. 由于这里,我们更多的关注如何去开发一些app,而不是科谱微信小程序,故在此不在过多的解释,详细的说明,可以去官网帮助文档. 在看到上图,小伙伴

  • 微信小程序 连续旋转动画(this.animation.rotate)详解

    微信小程序 连续旋转动画 一..js中封装旋转动画方法 添加animation属性 data:{ animation:''" } 改变animation的值(官网提供角度范围是-180~180,但是我发现角度越大会一直旋转) onShow: function() { console.log('index---------onShow()') this.animation = wx.createAnimation({ duration: 1400, timingFunction: 'linear'

  • 微信小程序开发之录音机 音频播放 动画实例 (真机可用)

    趁着周末用微信小程序做了个简易录音机.跟大家分享,欢迎批评! 老规矩,先几张图. 1.为了进来看得清楚.刚开始没有加载音频列表.代码往前挪一挪即可. 2.按住 录音按钮的时候会出现麦克风.中间的麦克风是个帧动画. 其实就是用js控制图片显示隐藏.没啥好说的.这里值得说一说的是录音.微信的录音API后,如果录音时间太短,会录音失败.所以fail的时候还是需要处理一下.录音时间的限制和微信语音是一样的.60秒. 3.我在录音完成后才加载列表. 下图就是从微信存储的文件里获取到的列表信息.有储存路径,

  • 微信小程序实现登录页云层漂浮的动画效果

    前言 2017年前端火了,微信小程序.weex.reactnative,就连支付宝也搞起了小程序,总感觉这是原生要毁灭的节奏啊,我也乘热上车万一波. 上效果图(GIF动态图) 当我看到这张背景图的时候,强迫症立马来了,这云朵为什么不动,于是开始了一波折腾. 知识点 认识animation animation 属性是一个简写属性,用于设置六个动画属性: 值 描述 animation-name 规定需要绑定到选择器的 keyframe 名称 animation-duration 规定完成动画所花费的

  • 微信小程序开发之麦克风动画 帧动画 放大 淡出

    想做个录音机,第一步就卡在麦克风动画这里了. 先上gif.再吐槽. ① 上面gif中声波的动画是个半成品.没有循环播放.在微信小程序的开发文档上找了很久,也没找到循环模式的参数设置.用setInterval()并不执行动画.我在微信小程序文档 动画最下面找到这么一行字.这个锅是不是可以甩出去了? ps:如果有同学能实现动画循环,一定告诉我. ② 麦克风里面是个帧动画.没有前端的基础,只能用非主流的办法凑合了. 用wx:if{{}}判断js中定义的值是不是等于图片对应的数字来控制图片的显示和隐藏.

  • 微信小程序的动画效果详解

    前言 由于公司计划有变,所以从H5页面改成去小程序写.所以在着手开发小程序.本人也不是什么前端高手,只是一名写后端偶尔写写前端的渣渣.请前端大神们勿喷. 一.什么是微信小程序? 小程序在我的理解中只是高度封装的H5,封装了各种组件.根据官方的说法小程序运行不是在浏览器当中.姑且算是微信的插件吧. 二.小程序不能操纵DOM 小程序不能直接操纵DOM,鼓励的是数据绑定.例如vue.js这种.所以个人而言感觉跟如果习惯了用JQ去操纵DOM的开发者很不习惯.需要一个习惯的过程. 三.小程序不能引用JQ

  • 微信小程序 动画的简单实例

    微信小程序--简易动画案例 wxml: <view class="container"> <view animation="{{animation}}" class="view">我在做动画</view> </view> <button type="primary" bindtap="translate">旋转</button> js:

  • 微信小程序开发之animation循环动画实现的让云朵飘效果

    本文实例讲述了微信小程序开发之animation循环动画实现的让云朵飘效果.分享给大家供大家参考,具体如下: 微信小程序提供了实现动画的api--animation,但却不能循环播放,都是一次性的,动完就Over了,下面提供一个用微信小程序的animation来实现循环动画的玩具,抛砖引玉,希望大家能想出更好的方法来实现真正的循环.说是玩具是因为这个循环动画通过js脚本的setInterval来实现的,但'setInterval'在实际运行中会出现越来越严重的延迟,这是由于js的单线程运行模式所

  • 微信小程序开发animation心跳动画效果

    本文实例为大家分享了微信小程序开发animation心跳动画,供大家参考,具体内容如下 1.微信小程序开发animation心跳动画 wxml文件中: <view class="bottomViewItem"> <view class="bottomMiddleHeaderView" bindtap="voteClick" data-id="value"> <view class="bo

  • 微信小程序按钮点击动画效果的实现

    动画效果如下: GIF看起来可能会有点卡 wxml <view class="confirm bubble">确定</view> wxss .confirm{ width: 325rpx; height: 80rpx; background: #07c160; border-radius: 6rpx; font-size: 30rpx; color: #fff; line-height: 80rpx; text-align: center; } .bubble{

  • 微信小程序实现animation动画

    微信小程序实现animation动画,具体内容如下 1. 创建动画实例 wx.createAnimation(OBJECT) 创建一个动画实例animation.调用实例的方法来描述动画.最后通过动画实例的export方法导出动画数据传递给组件的animation属性. 注意: export 方法每次调用后会清掉之前的动画操作 动画队列 调用动画操作方法后要调用 step() 来表示一组动画完成,可以在一组动画中调用任意多个动画方法,一组动画中的所有动画会同时开始,一组动画完成后才会进行下一组动

  • 微信小程序开发之左右分栏效果的实例代码

    本文以一个简单的小例子,简述在微信小程序开发中左右分栏功能的实现方式,主要涉及scroll-view ,列表数据绑定,及简单样式等内容,属于初级入门内容,仅供学习分享使用. 概述 在微信小程序开发中,左右分栏(左边显示分类,右边显示明细,然后进行联动)是一种常见的布局方式,多应用于点餐,冷饮店,外卖,以及其他类似的商城. 布局分析 布局分析图示如下: 涉及知识点 •scroll-view 可滚动视图区域.使用竖向滚动时,需要给<scroll-view>一个固定高度,通过 WXSS 设置 hei

  • Android中微信小程序开发之弹出菜单

    先给大家展示下效果图,具体效果图如下所示: 具体代码如下所示: 1.index.js //index.js //获取应用实例 var app = getApp() Page({ data: { isPopping: false,//是否已经弹出 animationPlus: {},//旋转动画 animationcollect: {},//item位移,透明度 animationTranspond: {},//item位移,透明度 animationInput: {},//item位移,透明度

  • 微信小程序实现翻牌抽奖动画

    本文实例为大家分享了微信小程序实现翻牌抽奖的具体代码,供大家参考,具体内容如下 效果图如下所示 这里做的比较简陋,就花了一点时间实现了翻牌抽奖效果,提供思路 .wxml <view class="button" bindtap="again">重新翻牌</view> <view class="curin-index"> <view bindtap="{{whether?'':'tamin'}}&

  • 微信 小程序开发环境搭建详细介绍

    微信小程序可谓是今天最火的一个名词了,一经出现真是轰炸了整个开发人员,当然很多App开发人员有了一个担心,微信小程序的到来会不会给移动端App带来一个寒冬,身为一个Android开发者我是不相信的,即使有,那也是很遥远的未来. 不管微信小程序是否能颠覆当今的开发格局,我们都要以好奇的心态去接收,去学习.不排斥新技术,所以,心动不如行动,赶紧先搭建一个微信小程序开发工具.那么接下来就让我们一起来开始吧. 先放一张Github上demo的动态图 开发工具下载是看到GitHub上的分享.那么你可以直接

  • 微信小程序开发之实现选项卡(窗口顶部TabBar)页面切换

    微信小程序开发中选项卡.在Android中选项卡一般用fragment,到了小程序这里瞬间懵逼了. 总算做出来了.分享出来看看. 先看效果: 再上代码: 1.index.wxml <!--index.wxml--> <view class="swiper-tab"> <view class="swiper-tab-list {{currentTab==0 ? 'on' : ''}}" data-current="0"

  • 微信小程序开发入门基础教程

    微信小程序开发入门基础教程 本文档将带你一步步创建完成一个微信小程序,并可以在手机上体验该小程序的实际效果. 开发准备工作获取微信小程序的 AppID 登录 https://mp.weixin.qq.com ,就可以在网站的"设置"-"开发者设置"中,查看到微信小程序的 AppID 了,注意不可直接使用服务号或订阅号的 AppID . 下载开发工具 下载地址:https://mp.weixin.qq.com/debug/wxadoc/dev/devtools/dow

随机推荐