-
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("函数名("+参数+")",毫秒数),这里的参数只能是字符串形式的,而不能传递一个对象
相关推荐
3. 小程序API:微信小程序提供了`setInterval`和`setTimeout`等定时器API,开发者可以结合这些API实现倒计时功能。 四、数据交互与状态管理 1. 数据传递:组件可以通过属性接收外部传入的结束时间,也可以通过事件...
【小程序-辩论倒计时】是一个综合资源的压缩包,主要包含了用于开发一款辩论倒计时小程序的相关素材和代码。这个小程序可能是一个实用工具,帮助辩论赛的参与者准确掌握时间,提升比赛的效率和公正性。下面将详细...
5. **API调用**:微信小程序提供了丰富的API,如计时器(setTimeout、setInterval)、导航(wx.navigateTo、wx.reLaunch等)、全局变量(wx.getStorageSync、wx.setStorageSync)等。通过查看源码,可以学习如何合理...
7. **定时器**:在游戏过程中,可能会用到`setTimeout`和`setInterval`来实现计时器功能,比如限制绘画时间或倒计时。 8. **事件处理**:游戏的交互离不开各种事件监听,如点击事件、滑动事件等,开发者通过`...
这个函数需要传递一些参数,比如计算机名、是否显示关机对话框、等待用户关闭程序的时间等。 4. **事件处理**:当用户点击取消定时按钮时,应停止Timer控件的计时,并取消任何即将执行的关机操作。这可能涉及到清理...
3. **函数与回调**:JavaScript中的函数是第一类对象,可以作为参数传递或返回值。动脑游戏可能包含多个函数,每个函数负责特定的任务,如生成题目、检查答案、计时等。此外,回调函数常用于事件处理,当某个事件...
3. **函数即一等公民**:JavaScript中的函数可以作为变量赋值、作为参数传递,也可以作为返回值。 4. **事件驱动**:JavaScript能够监听并响应用户的交互,如点击、滚动等,从而实现丰富的交互效果。 5. **异步...
通过传递特定参数,如`"_blank"`作为窗口名称,以及`"width=屏宽,height=屏高"`作为窗口属性,可以让新打开的页面立即处于最大化状态。 在JavaScript特效中,还有其他一些常见技术,如轮播图、计时器、下拉菜单、...
2. **函数与闭包**:JavaScript中的函数可以作为值传递,也可以作为延迟执行的工具,闭包则可以用来保存状态,这是实现计时器的重要机制。 3. **定时器API**:`setTimeout` 和 `setInterval` 是JavaScript中用于...
8. **计时器和回调函数**:如果投票有时间限制,JavaScript的`setTimeout`和`setInterval`函数可以用来设定定时任务,如倒计时显示。同时,回调函数可以确保在特定事件发生后执行特定的操作。 9. **错误处理**:...
对于函数参数的传递,也是通过apply()来实现的。 总之,函数防抖和节流是前端性能优化中的常见技巧,理解它们的原理与适用场景对于编写高性能的前端代码至关重要。在实际开发中,我们要根据具体需求来选择使用防抖...
- uni-app是由ECharts团队推出的跨端框架,基于Vue.js语法,可同时构建微信小程序、H5、App等项目。 - uni-app提供了丰富的组件和API,方便开发者进行快速开发,且具备良好的性能和兼容性。 2. **滑动验证码组件...
- map方法将元素传递给回调函数,回调函数的参数是当前元素的值,当前元素的索引和数组本身。 - parseInt接受两个参数,第一个是字符串,第二个是基数(radix)。 - 因此,['1','2','3'].map((item, index) => ...
这种做法强调了对JavaScript核心语法和API的深入理解和灵活运用,有助于提升开发者对JavaScript本质的理解,并且在某些场景下能实现更高效的代码执行和更小的项目体积。 ### 1. 香草JS的优势 - **轻量级**:不引入...
3. 函数:学习如何定义和调用函数,理解参数传递,以及函数表达式(匿名函数、箭头函数)。 4. 数组与对象:掌握数组的方法(如push、pop、slice、map、filter等)和对象的操作,以及JSON的使用。 5. 事件与DOM...
3. **函数**:JavaScript中的函数是一等公民,可以作为变量赋值、作为参数传递、也可以作为返回值。理解函数的声明和调用方式,以及闭包的概念,对于编写复用性代码至关重要。 4. **事件处理**:在游戏开发中,...