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


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 相关文章推荐
使用IE6看老赵的博客 jQuery初探
Jan 17 Javascript
基于jquery的自定义鼠标提示效果 jquery.toolTip
Nov 14 Javascript
Colortip基于jquery的信息提示框插件在IE6下面的显示问题修正方法
Dec 06 Javascript
JS设置网页图片vspace和hspace属性的方法
Apr 01 Javascript
写给小白的JavaScript引擎指南
Dec 04 Javascript
Bootstrap基本组件学习笔记之进度条(15)
Dec 08 Javascript
js评分组件使用详解
Jun 06 Javascript
详解webpack 如何集成第三方js库
Jun 29 Javascript
JavaScript 数组的进化与性能分析
Sep 18 Javascript
Vue 父子组件数据传递的四种方式( inheritAttrs + $attrs + $listeners)
May 04 Javascript
Node.js API详解之 assert模块用法实例分析
May 26 Javascript
详谈Vue.js框架下main.js,App.vue,page/index.vue之间的区别
Aug 12 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简单实现上一页下一页功能示例
2016/09/14 PHP
Laravel框架分页实现方法分析
2018/06/12 PHP
Javascript中暂停功能的实现代码
2007/03/04 Javascript
js 动态添加标签(新增一行,其实很简单,就是几个函数的应用)
2009/03/26 Javascript
javascript getElementsByClassName实现代码
2010/10/11 Javascript
jQuery队列控制方法详解queue()/dequeue()/clearQueue()
2010/12/02 Javascript
检测jQuery.js是否已加载的判断代码
2011/05/20 Javascript
jQuery拖动图片删除示例
2013/05/10 Javascript
复制js对象方法(详解)
2013/07/08 Javascript
JS下拉框内容左右移动效果的具体实现
2013/07/10 Javascript
3分钟写出来的Jquery版checkbox全选反选功能
2013/10/23 Javascript
全面解析JavaScript的Backbone.js框架中的Router路由
2016/05/05 Javascript
Js删除数组中某一项或几项的几种方法(推荐)
2016/07/27 Javascript
使用bootstrap实现多窗口和拖动效果
2016/09/22 Javascript
Jquery Easyui日历组件Calender使用详解(23)
2016/12/18 Javascript
jQuery中弹出iframe内嵌页面元素到父页面并全屏化的实例代码
2016/12/27 Javascript
Bootstrap 3浏览器兼容性问题及解决方案
2017/04/11 Javascript
从零开始学习Node.js系列教程之设置HTTP头的方法示例
2017/04/13 Javascript
layui 优化button按钮和弹出框的方法
2018/08/15 Javascript
Egg.js 中 AJax 上传文件获取参数的方法
2018/10/10 Javascript
使用canvas实现一个vue弹幕组件功能
2018/11/30 Javascript
Vue项目history模式下微信分享爬坑总结
2019/03/29 Javascript
vue把输入框的内容添加到页面的实例讲解
2019/11/11 Javascript
如何修改Vue打包后文件的接口地址配置的方法
2020/04/22 Javascript
vue实现把接口单独存放在一个文件方式
2020/08/13 Javascript
vue实现桌面向网页拖动文件的示例代码(可显示图片/音频/视频)
2021/03/01 Vue.js
python中argparse模块用法实例详解
2015/06/03 Python
Python 数据结构之堆栈实例代码
2017/01/22 Python
在Pycharm中项目解释器与环境变量的设置方法
2018/10/29 Python
详解Python3 对象组合zip()和回退方式*zip
2019/05/15 Python
html5设计原理(推荐收藏)
2014/05/17 HTML / CSS
手工制作的意大利礼服鞋:Ace Marks
2018/12/15 全球购物
高中物理教学反思
2014/02/08 职场文书
《夜晚的实验》教学反思
2014/02/19 职场文书
单位考核聘任报告
2015/03/02 职场文书
python实现双向链表原理
2022/05/25 Python