-
var startTime = new Date(); //获得当前的时间 startTime.setFullYear(2016, 5, 27); //调用设置年份 startTime.setHours(23); //调用设置指定的时间的小时字段 startTime.setMinutes(59); //调用设置指定时间的分钟字段 startTime.setSeconds(59); //调用设置指定时间的秒钟字段 startTime.setMilliseconds(999); //调用置指定时间的毫秒字段 var EndTime=startTime.getTime(); //获得截至的时间 var nMS = EndTime - NowTime.getTime(); //截至时间减去当前时间获得剩余时间 var nD = Math.floor(nMS/(1000 * 60 * 60 * 24)); //定义参数 获得天数 var nH = Math.floor(nMS/(1000*60*60)) % 24; //定义参数 获得小时 var nM = Math.floor(nMS/(1000*60)) % 60; //定义参数 获得分钟 var nS = Math.floor(nMS/1000) % 60; //定义参数 获得秒钟 这些就是当前时间
在我看来在倒计时中最重要的其实无非就那么几点
其一,找好逻辑关系。弄清楚是当前时间减去最后的时间倒计时还是最后的时间减去当前时间倒计时。
毫无疑问,大多数的倒计时都应该是用最后的时间减去当前时间,因为最后的时间是固定的,而当前时间在走,因此才实现倒计时。
第二,就是时间的换算,这个就是上面已经说的,很容易。
第三,其实也是最重要的就是,setTimeOut()方法的应用,我在这就算是栽了大跟头,
这个方法,是每隔一段时间,重复执行某一段函数。
function countDownTime(strP_Time) { var my_time=showTime(); my_time=(new Date(my_time)).getTime(); var dateDigitToString = function (num) { return num < 10 ? '0' + num : num; }; var msg=''; var publish_time=strP_Time+18000000; var now_time=my_time; var remain_time=publish_time-my_time; var nH = dateDigitToString(Math.floor(remain_time/(1000*60*60)) % 24); var nM = dateDigitToString(Math.floor(remain_time / (1000 * 60)) % 60); var nS = dateDigitToString(Math.floor(remain_time / 1000) % 60); if(nS>=0) { msg = nH+":"+nM + ":" + nS; } else { msg='00'+' '+':'+' '+'00'+' '+':'+' '+'00'; } $('.add').html(' '+' '+' '+' '+' '+'揭晓倒计时'+' '+msg); setTimeout(function(){countDownTime(strP_Time)},1000); }
当setTimout()方法需要传递参数的时候
window.settimeout()方法要调用带参数的函数有两种方法: 1. function init(){ var url = "<%=basePath%>fetchwater.do?method=searchRealWater&xzqh=" + "<%=xzqh%>" + "&rand="+Math.random(); //alert(url); window.setTimeout(function(){ searchJDWater(url);},100); } 2. function init(){ var url = "<%=basePath%>fetchwater.do?method=searchRealWater&xzqh=" + "<%=xzqh%>" + "&rand="+Math.random(); //alert(url); window.setTimeout(“searchJDWater(”+url+“)”, 100); } 注意: 带参数方法使用setTimeout要注意,setTimeout("函数名("+参数+")",毫秒数),这里的参数只能是字符串形式的,而不能传递一个对象
相关推荐
NULL 博文链接:https://dolphin-ygj.iteye.com/blog/517238
ios里在后台或者锁屏时js会停止运行,倒计时之类的场景会停止执行,这个就是解决这样的问题,常见的例如秒杀倒计时,抢券倒计时
js的一个简单应用,立秋倒计时: 指定时间内多次调用 setInterval("daojishi()",1000)//函数,刷新时间(函数外部调用) 指定时间内调用一次:应用于函数内部 setTimeout("daojishi()",1000)// 函数,刷新时间 ...
这里记录一下在微信小程序里面倒计时功能的简单实现 直接看看代码吧 //倒计时60秒 function countDown(that,count) { if (count == 0) { that.setData({ timeCountDownTop: '获取验证码', counting:false }) ...
为了加强对JavaScript原生代码的编写能力,以及巩固setTimeout()的使用方法,制作了一个倒计时的demo,倒计时在现在的网站中算是一个常见的小功能,如果大家喜欢的话可以留下,就当作一个日常实用的小脚本。...
实验室需要将项目的app搬到微信的小程序上,终于知道为什么程序员是手艺人了,只要有需求,就要想方设法去填充这种需求,去年是小程序的元年了可以说,去年冬天一个叫跳一跳的小程序游戏出现在我的微信中,当时就...
这里记录一下在微信小程序里面倒计时功能的简单实现。 直接看看代码吧 //倒计时60秒 function countDown(that,count) { if (count == 0) { that.setData({ timeCountDownTop: '获取验证码', counting:false })...
本文实例为大家分享了微信小程序实现订单倒计时的具体代码,供大家参考,具体内容如下 之前在做一个有拼团功能项目的时候遇到过倒计时的问题,由于当时技术不熟在这方面耽搁了好些时间,所以这里整理出来希望能为...
微信小程序电商常用倒计时实现实例 wxml文件放个text <text>second: {{second}} micro second:{{micro_second}} 在js文件中调用 function countdown(that) { var second = that.data.second if (second == 0) { ...
js倒记时计码,同一页面多个倒计时 特别好用 只需要要改一下p和div的ID称即可用。隐藏div的数字为倒计时的秒数
这是我们常常会使用方法setInterval或setTimeout,但是由于这两个方法是由脚本宿主模拟出来的Timer线程,在通过其调用我们的方法是不能为其传递参数。 我们常用的使用场景是: 代码如下:window.setTimeout(...
js中计时器重要使用window.setInterval()方法和window.setTimeout()方法, 其中setInterval()方法的作用是每隔一段时间执行一次方法,而window.setTimeo...
语法: setTimeout(code,millisec) 参数: code (必需):要调用的函数后要执行的 JavaScript 代码串。 millisec(必需):在执行代码前需等待的毫秒数。 提示: setTimeout() 只执行 code 一次。如果要多次调用,...
/****************************************************** // // 功能: 修改window.setTimeout,使之可以传递参数和对象参数 // 使用方法: window.setTimeout(回调函数,延迟时间,参数1,参数n) // ******************...
由于需要,我要用到setTimeout()并且在里边的函数参数传递一个参数,就像这样setTimeout("fun(参数)", 1000)。但是以我这种写法,js会报错,说‘参数’未定义。
setTimeout()从载入后延迟指定的时间去执行一个表达式或者是函数;仅执行一次 ;和window.clearTimeout一起使用.我在 代码如下:$(document).ready(function(){setTimout(test(),200); function test() { alert(1&#...
关于写倒计时大家可能都都比较熟悉,使用 setTimeout 或 setInterval 就可以搞定。几秒钟或者几分钟的倒计时这样写没有问题,但是如果是长时间的倒计时,这样写就会不准确。如果用户修改了他的设备时间,这样的倒...
window.settimeout()方法要调用带参数的函数有两种方法: 1. 代码如下: function init(){ var url = “<%=basePath%>fetchwater.do?method=searchRealWater&xzqh=” + “<%=xzqh%>” + “&rand=”+...