文档章节

关于做指定时间进行显示倒计时的一些想法

xiaoxin502
 xiaoxin502
发布于 2015/12/04 23:54
字数 458
阅读 167
收藏 0

在页面上用js进行控制显示倒计时,首先肯定需要一个定时器来进行刷新,我刚开始也认为这是很简单的逻辑,用一个定时器,1秒循环一次,每次减去一秒,这样不就行了。

后面想想这确实存在着很大的问题。

第一,虽然你定时器是设置了一秒钟执行一次,但是系统并不会很准确的每秒执行一次,这受到系统性能的影响可能会出现一些偏差,还要除去执行代码所用去的时间,虽然积累起来误差还是挺大的;

第二,应该你是用js进行控制的,这样当页面进行刷新的时候,你会发现倒计时的时间又被重置回来了,因为数据又被重新加载了。

后面上司跟我说了一个思路,其他思路,就是在循环减一这一步,换成,使用指定时间减去系统时间,以系统时间来作为一个参照点,这样就不会出现上面所说的问题了。

不过,这还是有一个小问题,如果我修改了系统时间的话,又会出现倒计时不准的问题了,所以这里如果能选择服务器的系统时间(假设服务器时间为标准时间)作为参照点的话,在客户端计算系统时间和服务器时间之间的差数,在循环中,用指定时间减去系统时间,再补上系统时间和服务器时间的差值,就更加完美一些了。

© 著作权归作者所有

共有 人打赏支持
xiaoxin502
粉丝 0
博文 4
码字总数 1730
作品 0
广州
18 行 JS 代码编一个倒时器

有时候在生活中,你需要一个JavaScript倒计时时钟,而不是一个末日装置设备。不管你是否有一次约会,销售、促销、或者游戏,你可以受益于使用原生JavaScript构建一个时钟,而不是拿到一个现成...

呵呵闯
2016/08/04
39
0
关于使用Cordova插件的问题求助

我在使用Cordova插件进行调用摄像头的时候设置录制5分钟 navigator.device.capture.captureVideo(captureSuccess, captureError, {limit: 1, duration: 300}); 但是在4分钟的时候录制时间会以...

周乐林6
2017/04/21
53
0
商品倒计时 for Swift

因公司项目添加商品倒计时需求,故针对商品倒计时模块做了个Demo,也是对自己的总结; 经过370041534群里的朋友提醒,既然是cell上有多个倒计时,可使用一个定时器控制cell上所有的倒计时,在...

程序H
06/05
0
0
基于Arduino开发板的倒计时器

计时器是一种时钟形式,通常用于测量时间间隔。有两种类型的计时器,一种是从零开始向上计数,用于测量已用时间,称为秒表。而第二种类型的计时器从用户提供的指定持续时间倒计时,通常称为倒...

woshi_ziyu
04/20
0
0
JS三教九流系列-jquery实例开发到插件封装3

我们先写实例,然后可能需要在封装为插件,最后做更高级的处理! 封装插件基础学习 http://my.oschina.net/u/2352644/blog/487688 1-7实例地址 http://my.oschina.net/u/2352644/blog/49082...

透笔度
2015/08/25
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

这些Spring中的设计模式,你都知道吗?

设计模式作为工作学习中的枕边书,却时常处于勤说不用的尴尬境地,也不是我们时常忘记,只是一直没有记忆。 Spring作为业界的经典框架,无论是在架构设计方面,还是在代码编写方面,都堪称行...

Java填坑之路
23分钟前
1
0
Spring Aop原理之Advisor过滤

在上文(Spring Aop之Advisor解析)中我们讲到,Spring Aop对目标bean的代理主要分为三个步骤:获取所有的Advisor,过滤当前bean可应用的Advisor和使用Advisor为当前bean生成代理对象,并且上文...

爱宝贝丶
34分钟前
0
0
JMockit学习教程

1 JMockit中文网 我觉得如果仅仅是开发自测的话,把JMockit中文网认真看一遍,就可以在项目中使用JMockit了。 http://jmockit.cn/index.htm 2 JMockit中文教程 官方文档中文版。对于不喜欢看...

SuperHeroes
46分钟前
0
0
Linux服务器几乎从不采用Arch Linux?

我们见得多的Linux服务器系统一般都是什么Ubuntu Server啊,什么Cent OS啊,什么Fedora啊,或者企业采用的Red Hat啊,为什么几乎没有Arch Linux呢?下面我将从若干个方面指出Arch Linux在服务...

linux-tao
57分钟前
0
0
js 函数柯里化 闭包

参考 https://mp.weixin.qq.com/s/GEHL3jarDdAAcr5tQGjmDg 一个统计求和的函数 需要知道整个数组的信息,然后遍历求值 function countMoney() { let money = 0 // 温馨提示:arguments...

阿豪boy
今天
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部