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


Posted in Javascript onAugust 16, 2017

本文实例为大家分享了微信小程序开发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 
 }); 
 } 
})

效果图:

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

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

Javascript 相关文章推荐
jquery与google map api结合使用 控件,监听器
Mar 04 Javascript
教您去掉ie网页加载进度条的方法
Dec 09 Javascript
JavaScript事件处理器中的event参数使用介绍
May 24 Javascript
Jquery的hide及toggle方法让超链接慢慢消失
Sep 06 Javascript
Javascript简单实现可拖动的div
Oct 22 Javascript
ExtJS4利根据登录后不同的角色分配不同的树形菜单
May 02 Javascript
详解JavaScript正则表达式之RegExp对象
Dec 13 Javascript
只要1K 纯JS脚本送你一朵3D红色玫瑰
Aug 09 Javascript
Laravel中常见的错误与解决方法小结
Aug 30 Javascript
AngularJS中$http使用的简单介绍
Mar 17 Javascript
在HTML文档中嵌入JavaScript的四种方法
May 07 Javascript
使用webpack打包后的vue项目如何正确运行(express)
Oct 26 Javascript
全选复选框JavaScript编写小结(附代码)
Aug 16 #Javascript
微信小程序自定义模态对话框实例详解
Aug 16 #Javascript
浅析webpack 如何优雅的使用tree-shaking(摇树优化)
Aug 16 #Javascript
JavaScript实现三级联动菜单效果
Aug 16 #Javascript
ionic3 懒加载
Aug 16 #Javascript
JavaScript仿微信(电话)联系人列表滑动字母索引实例讲解(推荐)
Aug 16 #Javascript
理解 Node.js 事件驱动机制的原理
Aug 16 #Javascript
You might like
杏林同学录(七)
2006/10/09 PHP
PHP数组交集的优化代码分析
2011/03/06 PHP
PHP 第二节 数据类型之字符串类型
2012/04/28 PHP
PHP结合Jquery和ajax实现瀑布流特效
2016/01/07 PHP
JQuery Easyui Tree的oncheck事件实现代码
2010/05/28 Javascript
js判断鼠标同时离开两个div的思路及代码
2013/05/31 Javascript
js验证整数加保留小数点的简单实例
2013/12/02 Javascript
node.js中的querystring.stringify方法使用说明
2014/12/10 Javascript
jQuery子窗体取得父窗体元素的方法
2015/05/11 Javascript
JavaScript实现的简单拖拽效果
2015/06/01 Javascript
js实现选中复选框文字变色的方法
2015/08/14 Javascript
javascript基础知识分享之类与函数化
2016/02/13 Javascript
JavaScript制作弹出层效果
2016/12/02 Javascript
javascript动画之磁性吸附效果篇
2016/12/09 Javascript
实例教学如何写vue插件
2017/11/30 Javascript
怎样使你的 JavaScript 代码简单易读(推荐)
2019/04/16 Javascript
layer.confirm点击第一个按钮关闭弹出框的方法
2019/09/09 Javascript
Vue SSR 即时编译技术的实现
2020/05/06 Javascript
在Python下进行UDP网络编程的教程
2015/04/29 Python
python Matplotlib底图中鼠标滑过显示隐藏内容的实例代码
2019/07/31 Python
解决tensorflow由于未初始化变量而导致的错误问题
2020/01/06 Python
pytorch nn.Conv2d()中的padding以及输出大小方式
2020/01/10 Python
离线状态下在jupyter notebook中使用plotly实例
2020/04/24 Python
Python第三方包PrettyTable安装及用法解析
2020/07/08 Python
html5本地存储_动力节点Java学院整理
2017/07/12 HTML / CSS
html5移动端自适应布局的实现
2020/04/15 HTML / CSS
军训自我鉴定怎么写
2014/02/13 职场文书
农村结婚典礼司仪主持词
2014/03/14 职场文书
专家推荐信模板
2014/05/09 职场文书
考试诚信承诺书
2014/05/23 职场文书
住院医师规范化培训实施方案
2014/06/12 职场文书
民主生活会批评与自我批评总结
2014/10/17 职场文书
考勤制度通知
2015/04/25 职场文书
毕业实习感受与体会
2015/05/26 职场文书
实用干货:敬酒词大全,帮你应付各种场合
2019/11/21 职场文书
利用uni-app生成微信小程序的踩坑记录
2022/04/05 Javascript