微信小程序实现倒计时功能


Posted in Javascript onNovember 19, 2020

本文实例为大家分享了微信小程序实现倒计时功能的具体代码,供大家参考,具体内容如下

商城商品中的活动倒计时

js

var endTime = new Date().getTime() + 24 * 3600 * 1000*4;

Page({

 /**
 * 页面的初始数据
 */
 data: {
 headerImgs: postData.postSwiperData,
 countDownDay: '',
 countDownHour: '',
 countDownMinute: '',
 countDownSecond: '',
 },

 /**
 * 生命周期函数--监听页面加载
 */
 onLoad: function(options) {
 var id = options.id; //页面跳转传过来的值
 },
 onReady: function() {
 var that = this;

 countdown(that);
 }
})

function countdown(that) {
 var NowTime = new Date().getTime();
 var EndTime = endTime;
 var total_micro_second = EndTime - NowTime || [];
 console.log('当前时间'+NowTime+'\n剩余时间:' + total_micro_second);
 // 渲染倒计时时钟
 that.setData({
 countDownDay: dateformaDay(total_micro_second),
 countDownHour: dateformaHour(total_micro_second),
 countDownMinute: dateformaMinute(total_micro_second),
 countDownSecond: dateformaSecondMinute(total_micro_second),
 });
 // if (total_micro_second <= 0) {
 // that.setData({
 // clock: "已经截止"
 // });
 // //return;
 // }
 setTimeout(function() {
 total_micro_second -= 1000;
 countdown(that);
 }, 1000)
}

// 时间格式化输出
function dateformaDay(micro_second) {
 // 总秒数
 var second = Math.floor(micro_second / 1000);
 // 天数
 var day = Math.floor(second / 3600 / 24);
 return day;
}

function dateformaHour(micro_second) {
 // 总秒数
 var second = Math.floor(micro_second / 1000);
 // 小时
 var hr = Math.floor(second / 3600 % 24);
 return hr;
}

function dateformaMinute(micro_second) {
 // 总秒数
 var second = Math.floor(micro_second / 1000);
 // 分钟
 var min = Math.floor(second / 60 % 60);
 return min;
}

function dateformaSecondMinute(micro_second) {
 // 总秒数
 var second = Math.floor(micro_second / 1000);
 // 秒
 var sec = Math.floor(second % 60);
 return sec;
}

wxml

<!-- 倒计时 start -->
 <view style='display:flex;flex-direction:column;'>
 <span style="font-size:10px;color:white;margin-top:5px;">距活动结束还剩</span>
 <view class='time-container'>
 <text class='time-number'>{{countDownDay}}</text>
 <span class='time-text'>天</span>
 <text class='time-number'>{{countDownHour}}</text>
 <span class='time-text'>时</span>
 <text class='time-number'>{{countDownMinute}}</text>
 <span class='time-text '>分</span>
 <text class='time-number '>{{countDownSecond}}</text>
 <span class='time-text '>秒</span>
 </view>
 </view>
<!-- 倒计时 end -->

wxss

.time-container {
 display: flex;
 flex-direction: row;
 margin-top: 10px;
 margin-bottom: 10px;
 margin-right: 10px;
 align-items: center;
}

.time-number {
 background: white;
 color: red;
 width: 18px;
 height: 18px;
 font-size: 12px;
 border-radius: 3px;
 display: flex;
 align-items: center;
 justify-content: center;
}

.time-text {
 font-size: 10px;
 color: white;
 margin: 3px;
}

为大家推荐现在关注度比较高的微信小程序教程一篇:《微信小程序开发教程》小编为大家精心整理的,希望喜欢。

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

Javascript 相关文章推荐
jQuery与getJson结合的用法实例
Aug 07 Javascript
基于javascript bootstrap实现生日日期联动选择
Apr 07 Javascript
JavaScript中setter和getter方法介绍
Jul 11 Javascript
Vue中fragment.js使用方法详解
Mar 09 Javascript
用Vue.extend构建消息提示组件的方法实例
Aug 08 Javascript
深入理解Vue 单向数据流的原理
Nov 09 Javascript
Angularjs中date过滤器失效的问题及解决方法
Jul 06 Javascript
angular2/ionic2 实现搜索结果中的搜索关键字高亮的示例
Aug 17 Javascript
vue缓存的keepalive页面刷新数据的方法
Apr 23 Javascript
vue+导航锚点联动-滚动监听和点击平滑滚动跳转实例
Nov 13 Javascript
jQuery实现简单聊天室
Feb 08 jQuery
JavaScript indexOf()原理及使用方法详解
Jul 09 Javascript
微信小程序实现列表左右滑动
Nov 19 #Javascript
详解JavaScript 中的批处理和缓存
Nov 19 #Javascript
Javascript中window.name属性详解
Nov 19 #Javascript
JavaScript实现图片合成下载的示例
Nov 19 #Javascript
vue 获取到数据但却渲染不到页面上的解决方法
Nov 19 #Vue.js
vue 插槽简介及使用示例
Nov 19 #Vue.js
微信小程序实现点击导航条切换页面
Nov 19 #Javascript
You might like
微信支付PHP SDK之微信公众号支付代码详解
2015/12/09 PHP
php反序列化长度变化尾部字符串逃逸(0CTF-2016-piapiapia)
2020/02/15 PHP
php封装实现钉钉机器人报警接口的示例代码
2020/08/08 PHP
JavaScript实际应用:innerHTMl和确认提示的使用
2006/06/22 Javascript
JQuery 引发两次$(document.ready)事件
2010/01/15 Javascript
Script的加载方法小结
2011/01/12 Javascript
火狐4、谷歌12不支持Jquery Validator的解决方法分享
2011/06/20 Javascript
用jquery的方法制作一个简单的导航栏
2014/06/23 Javascript
JS实现网站菜单拖拽移位效果的方法
2015/09/24 Javascript
js实现自定义路由
2017/02/04 Javascript
jquery实现input框获取焦点的方法
2017/02/06 Javascript
Vue使用NPM方式搭建项目
2018/10/25 Javascript
原生JS实现的跳一跳小游戏完整实例
2019/01/27 Javascript
javascript实现打砖块小游戏(附完整源码)
2020/09/18 Javascript
vue 使用vant插件做tabs切换和无限加载功能的实现
2020/11/04 Javascript
[48:18]DOTA2-DPC中国联赛 正赛 RNG vs Dynasty BO3 第二场 1月29日
2021/03/11 DOTA
python 全文检索引擎详解
2017/04/25 Python
通过源码分析Python中的切片赋值
2017/05/08 Python
Python实现购物系统(示例讲解)
2017/09/13 Python
pandas.DataFrame删除/选取含有特定数值的行或列实例
2018/11/07 Python
使用Python实现微信提醒备忘录功能
2018/12/04 Python
浅析Python 中几种字符串格式化方法及其比较
2019/07/02 Python
Python实现自动打开电脑应用的示例代码
2020/04/17 Python
python中如何写类
2020/06/29 Python
如何解决python多种版本冲突问题
2020/10/13 Python
Python图像读写方法对比
2020/11/16 Python
医务工作者先进事迹材料
2014/01/26 职场文书
创建精神文明单位实施方案
2014/03/08 职场文书
2014年入党积极分子党课学习心得体会模板
2014/04/03 职场文书
股权转让协议书
2014/04/12 职场文书
初一新生军训方案
2014/05/22 职场文书
就业协议书盖章的注意事项
2014/09/28 职场文书
幼儿园大班开学寄语(2015秋季)
2015/05/27 职场文书
pandas中DataFrame数据合并连接(merge、join、concat)
2021/05/30 Python
Python人工智能之混合高斯模型运动目标检测详解分析
2021/11/07 Python
MySQL 数据库范式化设计理论
2022/04/22 MySQL