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

wxml代码:
<view class='spellNum'>
<view>
<text style='color: #fff;'>团长</text>
<image src='{{shift}}'></image>
</view>
<image wx:for="{{head}}" src='{{item.buyer_avatar}}'></image>
<view wx:if="{{num==1}}" style='text-align:center'>
<text style='font-size:30rpx;color:#000;line-height:66rpx'>仅剩<text style='color:red'> {{surplus}} </text>个名额 \n</text>
<view>拼团
<text style='color:red'> {{clock}} {{micro_second}}</text> 后结束</view>
</view>
</view>
js文件代码:
// pages/spell/spell.js
let app = getApp()
Page({ /**
* 页面的初始数据
*/
data: {
clock: '',
}, /**
* 生命周期函数--监听页面加载
*/
onLoad: function (options) {
let that = this// 参团人数
wx.request({
url: app.baseURL + "act=goods&op=group_info",
data: {
appid: app.appid,
groupbuy_id: options.groupbuy_id,
goods_id: options.goods_id
},
header: {
"content-type": "application/json"
},
success: res => {
console.log(res);
let date = res.data.datas.end_time
console.log('date'+date)
let thisDate = Math.round(new Date() / ) console.log('thisDate'+thisDate)
total_micro_second = date - thisDate
console.log('total_micro_second'+total_micro_second) count_down(that); }) // 定义一个总毫秒数,以一分钟为例。TODO,传入一个时间点,转换成总毫秒数
var total_micro_second = ""; console.log(total_micro_second); /* 毫秒级倒计时 */
function count_down(that) {
// 渲染倒计时时钟
that.setData({
num: "",
clock: dateformat(total_micro_second)
}); if (total_micro_second <= ) {
that.setData({
num: "",
clock: "已经截止"
});
// timeout则跳出递归
return;
}
setTimeout(function () {
// 放在最后--
total_micro_second -= ;
count_down(that);
}
, )
} // 时间格式化输出,如03:25:19 86。每10ms都会调用一次
// function dateformat(micro_second) {
// // 秒数
// var second = Math.floor(micro_second / 1000);
// // 小时位
// var hr = fill_zero_prefix(Math.floor(second / 3600));
// // 分钟位
// var min = fill_zero_prefix(Math.floor((second - hr * 3600) / 60));
// // 秒位
// var sec = fill_zero_prefix((second - hr * 3600 - min * 60));// equal to => var sec = second % 60;
// // 毫秒位,保留2位
// //var micro_sec = fill_zero_prefix(Math.floor((micro_second % 1000) / 10)); // return hr + ":" + min + ":" + sec;
// } function dateformat(micro_second) { // 总秒数
//var second = Math.floor(micro_second / 1000);
var second = micro_second ;
// 天数
var day = Math.floor(second / / );
// 小时
var hr = Math.floor(second / % );
// 分钟
var min = Math.floor(second / % );
// 秒
var sec = Math.floor(second % );
return day + "天" + hr + "小时" + min + "分钟" + sec + "秒";
} // 位数不足补零
function fill_zero_prefix(num) {
return num < ? "" + num : num
}
微信小程序动态显示项目倒计时效果的更多相关文章
- 微信小程序实现验证码倒计时效果
效果图 wxml <input class='input-pwd' placeholder="新密码" placeholder-style='color: #000' pas ...
- 微信小程序验证码获取倒计时
wxml <button disabled='{{disabled}}' bindtap="goGetCode">{{code}}</button> js ...
- 微信小程序-滚动消息通知效果
这次我主要想总结一下微信小程序实现上下滚动消息提醒,主要是利用swiper组件来实现,swiper组件在小程序中是滑块视图容器. 我们通过vertical属性(默认为false,实现默认左右滚动)设置 ...
- 微信小程序60秒倒计时
微信小程序发送短信验证码后60秒倒计时功能,效果图: 完整代码 index.wxml <!--index.wxml--> <view class="container&qu ...
- 微信小程序上手项目
小程序刚发布的时候何其风光,可能大家习惯性的对微信给予了过高的期待,加上一开始小程序的功能确实很孱弱,扫了很多人的兴. 经过最开始的热闹和喧嚣,如今微信小程序热度大减,但随着不断迭代,如今小程序的功能 ...
- 微信小程序注册60s倒计时功能 使用JS实现注册60s倒计时功能
微信小程序+WEB使用JS实现注册[60s]倒计时功能开发步骤: 1.wxml页面代码: <text>绑定手机</text> <form bindsubmit=" ...
- 微信小程序< 3 > ~ 微信小程序开源项目合集
简介 移动开发者想学习微信小程序需要学习一点HTML ,CSS和JS才能够比较快速的上手,参考自己学习Android学习过程,阅读源码是一个很好的方式,所以才收集了一些WeApp的开源项目. awes ...
- (转)微信小程序开发项目——笑话大全
此项目是学习完微信小程序后实现的一个demo,采用聚合数据的免费api获取最新的文本笑话和趣图(图片和gif图) 项目地址:https://github.com/zhijieeeeee/wecha ...
- 微信小程序实现滑动删除效果
在一些app中,随处可见左滑动的效果,在微信小程序中,官方并未提供相关组件,需要我们自己动手写一个类似的效果 下面仅列举出核心代码,具体的优化需要根据你自身的需求 <view class='li ...
随机推荐
- IOS APP 上传到AppStore
由于第一次接触要把 app 上传到 AppStore 比较棘手,很多地方不懂,研究了 大半天 终于给上传成功了,现在坐等审核吧,首先把上传到AppStore的流程 整理下 : 第一 :准备证书 (要确 ...
- stderr重定向
在测试alljoyn时开启了内部日志,输出太多想重定向到文件中,使用如下命令: ./chat -s aaa >.txt 居然还是打印到屏幕上而不是输出到文件中. 查看alljoyn写日志的代码, ...
- Android adb shell学习心得(四)
1.awk中的sub sub为替换函数.形式如 sub(/1/,"",$2) 将第二个变量的第一个1替换为空,若将sub替换为gsub.则替换全部的1. 2.awk中的-F 分隔符 ...
- js知识梳理1:理解对象的属性特性
1.数据属性 数据属性的4个特性: Configurable:①表示能否通过delete删除属性从而重新定义,②能否修改属性的特性,③能否把属性修改为访问器属性.对象直接量里默认值true. Enum ...
- ES6 async 与 await 实战
下面来说一说通过async和await方式来辅助请求和封装 首先我们定义一个类,定义一个async方法,才可以使用await class JForm extends React.Component { ...
- 从cocos2dx到cocos2dhtml5的不同之处
首先cocos2dhtml5使用javascript编程, 严格区分大写和小写. 1.新建cocos2dhtml5项目. 直接复制引擎自带的helloworld.改一下目录名字就可以. 2.新增js文 ...
- Python-所有特殊方法、魔术方法、钩子
C.__init__(self[, arg1, ...]) 构造器(带一些可选的参数) C.__new__(self[, arg1, ...]) 构造器(带一些可选的参数)通常用在设置不变数据类型的子 ...
- PHP 导出 CSV 文件用 Excel 打开出现中文乱码
本篇文章由:http://xinpure.com/php-export-csv-file-opened-by-excel-appear-garbled/ 乱码情况 写了一段导出 CSV 文件的代码,可 ...
- 关于数组中加入相同的view的试验
随便新建一个工程,然后在控制器中粘贴如下代码 - (void)viewDidLoad { [super viewDidLoad]; UIView * view = [[UIView alloc]ini ...
- Mac Xcode下配置OpenGL
暂时搁置一下iOS,又要去弄一些杂七杂八的东西了,毕竟是学校的作业,还是要完成的. 作业是让我们用OpenGL做一个茶壶- -.而且要三维立体能旋转的那种. 好吧这些都不是重点,重点是我最终决定在Ma ...