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


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 相关文章推荐
JavaScript事件列表解说
Dec 22 Javascript
jQuery 改变CSS样式基础代码
Feb 11 Javascript
在javascript中对于DOM的加强
Apr 11 Javascript
JS禁用浏览器退格键实现思路及代码
Oct 29 Javascript
jquery validate添加自定义验证规则(验证邮箱 邮政编码)
Dec 04 Javascript
js监控IE火狐浏览器关闭、刷新、回退、前进事件
Jul 23 Javascript
JS设置下拉列表框当前所选值的方法
Dec 22 Javascript
ES6中非常实用的新特性介绍
Mar 10 Javascript
浅谈$_FILES数组为空的原因
Feb 16 Javascript
JS原生数据双向绑定实现代码
Aug 14 Javascript
Vue 拦截器对token过期处理方法
Jan 23 Javascript
Vue-cli3项目引入Typescript的实现方法
Oct 18 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日期转时间戳,指定日期转换成时间戳
2012/07/17 PHP
解析coreseek for sphinx的使用
2013/06/21 PHP
PHP 读取和编写 XML
2014/11/19 PHP
PHP中Array相关函数简介
2016/07/03 PHP
ThinkPHP实现静态缓存和动态缓存示例代码
2017/05/02 PHP
js中window.open()的所有参数详细解析
2014/01/09 Javascript
JQuery中Text方法用法实例分析
2015/05/18 Javascript
一道常被人轻视的web前端常见面试题(JS)
2016/02/15 Javascript
JavaScript使用ZeroClipboard操作剪切板
2017/05/10 Javascript
js脚本编写简单刷票投票系统
2017/06/27 Javascript
Vue 同步异步存值取值实现案例
2020/08/05 Javascript
JS实现小米轮播图
2020/09/21 Javascript
vue 解决在微信内置浏览器中调用支付宝支付的情况
2020/11/09 Javascript
[04:29]2014DOTA2国际邀请赛 主赛事第三日TOPPLAY
2014/07/21 DOTA
Python re模块介绍
2014/11/30 Python
Python中的tuple元组详细介绍
2015/02/02 Python
python机器学习之随机森林(七)
2018/03/26 Python
PyCharm代码回滚,恢复历史版本的解决方法
2018/10/22 Python
对python:threading.Thread类的使用方法详解
2019/01/31 Python
Python判断对象是否为文件对象(file object)的三种方法示例
2019/04/26 Python
使用Python完成15位18位身份证的互转功能
2019/11/06 Python
python如何使用socketserver模块实现并发聊天
2019/12/14 Python
python实现修改固定模式的字符串内容操作示例
2019/12/30 Python
Selenium基于PIL实现拼接滚动截图
2020/04/10 Python
CSS3中background-clip和background-origin的区别示例介绍
2014/03/10 HTML / CSS
css3圆角边框和边框阴影示例
2014/05/05 HTML / CSS
html5的canvas实现3d雪花飘舞效果
2013/12/27 HTML / CSS
Snapfish英国:在线照片打印和个性化照片礼品
2017/01/13 全球购物
英国街头品牌:Bee Inspired Clothing
2018/02/12 全球购物
Nebula美国官网:便携式投影仪
2019/03/15 全球购物
struct和class的区别
2015/11/20 面试题
安全教育心得体会
2013/12/29 职场文书
2014各大专业毕业生自我评价
2014/09/17 职场文书
机关党员三严三实心得体会
2014/10/13 职场文书
群众路线调研报告范文
2014/11/03 职场文书
教你使用TensorFlow2识别验证码
2021/06/11 Python