欢迎来到258分享网,纯净的网络源码分享基地!

258资源分享网

全部作品
全部作品
网站源码
微信源码
素材特效
源码插件
视频教程
建站学院
热门搜索: 织梦  农业种植  农业  安全设置  官方
258资源分享 > 建站学院 > 微信开发 > 微信小程序开发效果:animation心跳动画

推荐下载

HTML5响应式自适应网咯设计

2020-05-12   浏览:740

高端HTML5响应式企业通用网

2020-05-06   浏览:521

html5响应式外贸网站英文版

2020-05-08   浏览:510

HTML5自适应律师工作室类网

2020-04-04   浏览:504

HTML5影视传媒文化公司类网

2020-05-12   浏览:502

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

发布时间:2020-12-27  

2

3

4

5

6

7

8

9

10

11

12

 

<view class="bottomViewItem">

  <view class="bottomMiddleHeaderView" bindtap="voteClick" data-id="value">

   <view class="bottomMiddleHeaderItem" animation="{{animationMiddleHeaderItem}}">

   <!-- 心跳 -->

   <view class="bottomMiddleHeaderItemSubView">

    <image src=http://www.yiyongtong.com/archives/"/images/detail_vote_heart.png" style="width:32rpx; height:32rpx;" animation="{{animationMiddleHeaderItem}}"></image>

   </view>

   <!-- 投票文字 -->

   <view class="bottomMiddleHeaderItemSubView">投票</view>

   </view>

  </view>

 </view>

 

js文件中:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

 

// 页面渲染完成

 onReady: function () {

  var circleCount = 0;

  // 心跳的外框动画

  this.animationMiddleHeaderItem = wx.createAnimation({

  duration:1000, // 以毫秒为单位

  /**

  * #0,0,.58,1

  * linear 动画一直较为均匀

  * ease 从匀速到加速在到匀速

  * ease-in 缓慢到匀速

  * ease-in-out 从缓慢到匀速再到缓慢

  *

  *

  * 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文件中:

1

2

3

4

5

6

7

 

<!--倒计时 -->

 <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文件中:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

 

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心跳动画