小程序实现列表多个批量倒计时


Posted in Javascript onJanuary 29, 2021

最近在写一个列表功能,列表中有倒计时的效果,网上没有可用的素材,以下是本人自己写的,如有问题,希望大家指出。

先来看看基本的效果

小程序实现列表多个批量倒计时

小程序中列表倒计时,类似活动倒计时列表,列表中有多个倒计时效果,且不冲突

先把时间打印出来,放在data中,然后在写计时器;如果先写计时器,然后把打印出来的时间放在data就会报错,setData不支持这种操作。

数据文件(dates.js,返回的时间数据是剩余时间)

var dates=[
 {
 dat:324235235
 },
 {
 dat:7200000
 },
 {
 dat:675875754
 }
]
 
module.exports = {
 datetime: dates
}

wxml文件(a.wxml)

<view wx:for="{{wearList.datetime}}" wx:for-item="item" wx:key="id">
 <view class='dates'>{{item.difftime}}</view>
</view>

js文件(a.js)

var dates=require('../utils/dates.js');//数据文件
 
Page({
 data:{},
 onShow(a){
 // console.log(dates.datetime)//数据
 let that=this;
 let len=dates.datetime.length;//时间数据长度
 
 function nowTime() {//时间函数
  // console.log(a)
  for (var i = 0; i < len; i++) {
  var intDiff = dates.datetime[i].dat;//获取数据中的时间戳
  // console.log(intDiff)
  var day=0, hour=0, minute=0, second=0;  
  if(intDiff > 0){//转换时间
   day = Math.floor(intDiff / (60 * 60 * 24));
   hour = Math.floor(intDiff / (60 * 60)) - (day * 24);
   minute = Math.floor(intDiff / 60) - (day * 24 * 60) - (hour * 60);
   second = Math.floor(intDiff) - (day * 24 * 60 * 60) - (hour * 60 * 60) - (minute * 60);
   if(hour <=9) hour = '0' + hour;
   if (minute <= 9) minute = '0' + minute;
   if (second <= 9) second = '0' + second;
   dates.datetime[i].dat--;
   var str=hour+':'+minute+':'+ second 
   // console.log(str) 
  }else{
   var str = "已结束!";
   clearInterval(timer); 
  }
  // console.log(str);
  dates.datetime[i].difftime = str;//在数据中添加difftime参数名,把时间放进去
  }
  that.setData({
  wearList: dates
  })
  // console.log(that)
 }
 
 nowTime();
 var timer = setInterval(nowTime, 1000);
 
 }
})

小程序中列表倒计时,类似活动倒计时列表,列表中有多个倒计时效果,且不冲突

先把时间打印出来,放在data中,然后在写计时器;如果先写计时器,然后把打印出来的时间放在data就会报错,setData不支持这种操作。

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

Javascript 相关文章推荐
关于Blog顶部的滚动导航条代码
Sep 25 Javascript
jQuery+HTML5实现图片上传前预览效果
Aug 20 Javascript
基于jQuery实现的幻灯图片切换
Dec 02 Javascript
微信小程序 页面跳转及数据传递详解
Mar 14 Javascript
TypeScript入门-基本数据类型
Mar 28 Javascript
vue-cli+webpack在生成的项目中使用bootstrap实例代码
May 26 Javascript
js实现省市级联效果分享
Aug 10 Javascript
微信小程序仿RadioGroup改变样式的处理方案
Jul 13 Javascript
利用JS代码自动删除稿件的普通弹幕功能
Sep 20 Javascript
JavaScript实时更新当前的时间的示例代码
Jul 15 Javascript
vue和H5 draggable实现拖拽并替换效果
Jul 29 Javascript
vue中template的三种写法示例
Oct 21 Javascript
记一次vue-webpack项目优化实践详解
Feb 17 #Javascript
Vuepress 搭建带评论功能的静态博客的实现
Feb 17 #Javascript
详解javascript replace高级用法
Feb 17 #Javascript
Nuxt.js 数据双向绑定的实现
Feb 17 #Javascript
详解微信小程序实现仿微信聊天界面(各种细节处理)
Feb 17 #Javascript
JavaScript遍历DOM元素的常见方式示例
Feb 16 #Javascript
原生JS实现逼真的图片3D旋转效果详解
Feb 16 #Javascript
You might like
PHP实现下载功能的代码
2012/09/29 PHP
PHP和JavaScrip分别获取关联数组的键值示例代码
2013/09/16 PHP
PHP提示Warning:phpinfo() has been disabled函数禁用的解决方法
2014/12/17 PHP
php准确计算复活节日期的方法
2015/04/18 PHP
PHP file_get_contents函数读取远程数据超时的解决方法
2015/05/13 PHP
php 实现Hash表功能实例详解
2016/11/29 PHP
PHP中in_array的隐式转换的解决方法
2018/03/06 PHP
服务器端的JavaScript脚本 Node.js 使用入门
2012/03/07 Javascript
Javascript开发之三数组对象实例介绍
2012/11/12 Javascript
jQuery判断checkbox是否选中的小例子
2013/12/02 Javascript
javascript在当前窗口关闭前检测窗口是否关闭
2014/09/29 Javascript
JavaScript中使用typeof运算符需要注意的几个坑
2014/11/08 Javascript
javascript数据结构之双链表插入排序实例详解
2015/11/25 Javascript
实例详解Nodejs 保存 payload 发送过来的文件
2016/01/14 NodeJs
JavaScript实现垂直滚动条效果
2017/01/18 Javascript
jQuery动态追加页面数据以及事件委托详解
2017/05/06 jQuery
详解Nodejs 通过 fs.createWriteStream 保存文件
2017/10/10 NodeJs
vue-router中scrollBehavior的巧妙用法
2018/07/09 Javascript
vue中uni-app 实现小程序登录注册功能
2019/10/12 Javascript
python重试装饰器示例
2014/02/11 Python
Python的网络编程库Gevent的安装及使用技巧
2016/06/24 Python
python生成excel的实例代码
2017/11/08 Python
python搭建服务器实现两个Android客户端间收发消息
2018/04/12 Python
APIStar:一个专为Python3设计的API框架
2018/09/26 Python
Python面向对象总结及类与正则表达式详解
2019/04/18 Python
pytorch载入预训练模型后,实现训练指定层
2020/01/06 Python
python字典和json.dumps()的遇到的坑分析
2020/03/11 Python
基于python实现获取网页图片过程解析
2020/05/11 Python
python实现控制台输出颜色
2021/03/02 Python
新西兰最大的天然保健及护肤品网站:HealthPost(直邮中国)
2021/02/13 全球购物
新加坡最早生产电动滑板车的制造商之一:FunsToTheFore
2020/09/08 全球购物
2015元旦联欢晚会结束语
2014/12/14 职场文书
各类场合主持词开场白范文集锦
2019/08/16 职场文书
详解Redis实现限流的三种方式
2021/04/27 Redis
python3中apply函数和lambda函数的使用详解
2022/02/28 Python
解决Mysql报错 Table 'mysql.user' doesn't exist
2022/05/06 MySQL