微信小程序动态显示项目倒计时


Posted in Javascript onJune 20, 2019

本文实例为大家分享了微信小程序动态显示项目倒计时的具体代码,供大家参考,具体内容如下

1、展示的效果如下

微信小程序动态显示项目倒计时

2、wxml代码:

<!--倒计时 -->
<text wx:if="{{clock!=''}}">仅剩{{clock}}</text>
<text wx:if="{{clock==''}}">已经截止</text>

3、js代码:

在拼团项目中获取到活动结束时间的格式为一下格式

微信小程序动态显示项目倒计时

因该格式无法正常计算时长,所进行了格式转换new Date(that.data.collage.collage_end).getTime()

// 倒计时
function countdown(that) {
 var EndTime = new Date(that.data.collage.collage_end).getTime() || [];
 // console.log(EndTime);
 var NowTime = new Date().getTime();
 var total_micro_second = EndTime - NowTime || [];  //单位毫秒
 if (total_micro_second < 0) {
  // console.log('时间初始化小于0,活动已结束状态');
  total_micro_second = 1;   //单位毫秒 ------ WHY?
 }
 // console.log('剩余时间:' + total_micro_second);
 // 渲染倒计时时钟
 that.setData({
  clock: dateformat(total_micro_second)  //若已结束,此处输出'0天0小时0分钟0秒'
 });
 if (total_micro_second <= 0) {
  that.setData({
   clock: "已经截止"
  });
  return;
 }
 setTimeout(function () {
  total_micro_second -= 1000;
  countdown(that);
 }
  , 1000)
}
 
// 时间格式化输出,如11天03小时25分钟19秒 每1s都会调用一次
function dateformat(micro_second) {
 // 总秒数
 var second = Math.floor(micro_second / 1000);
 // 天数
 var day = Math.floor(second / 3600 / 24);
 // 小时
 var hr = Math.floor(second / 3600 % 24);
 // 分钟
 var min = Math.floor(second / 60 % 60);
 // 秒
 var sec = Math.floor(second % 60);
 return day + "天" + hr + "小时" + min + "分钟" + sec + "秒";
}
Page({
  onLoad: function(options) {
    wx.request({
      success: function(request) {
        // 倒计时(获取结束时间后再进行倒计时方法调用)
        countdown(that);
      }
    })
  }  
})

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

Javascript 相关文章推荐
js 图片缩放(按比例)控制代码
May 27 Javascript
jQuery之字体大小的设置方法
Feb 27 Javascript
jquery处理json对象
Nov 03 Javascript
node.js实现爬虫教程
Aug 25 Javascript
Web Uploader文件上传插件使用详解
May 10 Javascript
深入理解JS DOM事件机制
Aug 06 Javascript
解决wx.onMenuShareTimeline出现的问题
Aug 16 Javascript
教你如何在Node.js中使用jQuery
Aug 28 Javascript
JavaScript中原型链存在的问题解析
Sep 25 Javascript
VUE axios上传图片到七牛的实例代码
Jul 28 Javascript
vue的diff算法知识点总结
Mar 29 Javascript
layerui代码控制tab选项卡,添加,关闭的实例
Sep 04 Javascript
微信小程序实现日期格式化和倒计时
Nov 01 #Javascript
微信小程序实现商城倒计时
Nov 01 #Javascript
微信小程序实现批量倒计时功能
Nov 01 #Javascript
微信小程序实现订单倒计时
Nov 01 #Javascript
Vue监听页面刷新和关闭功能
Jun 20 #Javascript
Vue 2.0 中依赖注入 provide/inject组合实战
Jun 20 #Javascript
js实现页面多个日期时间倒计时效果
Jun 20 #Javascript
You might like
浅析php与数据库代码开发规范
2013/08/08 PHP
深入解读php中关于抽象(abstract)类和抽象方法的问题分析
2014/01/03 PHP
使用Thinkphp框架开发移动端接口
2015/08/05 PHP
一段好玩的JavaScript代码
2006/12/01 Javascript
NiftyCube——轻松实现圆角边框
2007/02/20 Javascript
用javascript控制iframe滚动的代码
2007/04/10 Javascript
jQuery温习篇 强大的JQuery选择器
2010/04/24 Javascript
js正则表达式的使用详解
2013/07/09 Javascript
浅析onsubmit校验表单时利用ajax的return false无效问题
2013/07/10 Javascript
js实现模拟计算器退格键删除文字效果的方法
2015/05/07 Javascript
JS模式之简单的订阅者和发布者模式完整实例
2015/06/30 Javascript
浅谈Web页面向后台提交数据的方式和选择
2016/09/23 Javascript
详解动画插件wow.js的使用方法
2017/09/13 Javascript
浅谈vue.js导入css库(elementUi)的方法
2018/03/09 Javascript
React中使用async validator进行表单验证的实例代码
2018/08/17 Javascript
在Vue中使用mockjs代码实例
2020/11/25 Vue.js
[03:14]辉夜杯主赛事 12月25日每日之星
2015/12/26 DOTA
Python中的迭代器漫谈
2015/02/03 Python
Python实现从脚本里运行scrapy的方法
2015/04/07 Python
Python实现读写sqlite3数据库并将统计数据写入Excel的方法示例
2017/08/07 Python
python with提前退出遇到的坑与解决方案
2018/01/05 Python
Python SQLite3简介
2018/02/22 Python
Python标准库笔记struct模块的使用
2018/02/22 Python
在python中利用最小二乘拟合二次抛物线函数的方法
2018/12/29 Python
python如何把字符串类型list转换成list
2020/02/18 Python
Python实现栈的方法详解【基于数组和单链表两种方法】
2020/02/22 Python
用于ETL的Python数据转换工具详解
2020/07/21 Python
VSCode 自定义html5模板的实现
2019/12/05 HTML / CSS
韩国著名的在线综合购物网站:Akmall
2016/08/07 全球购物
遇到的Mysql的面试题
2014/06/29 面试题
运动会方阵解说词
2014/02/12 职场文书
父亲的菜园教学反思
2014/02/13 职场文书
小学一年级学生评语
2014/04/22 职场文书
公司试用期员工自我评价
2014/09/17 职场文书
2015年见习期个人工作总结
2015/05/28 职场文书
办公室日常管理制度
2015/08/04 职场文书