代码如下:复制代码代码如下:/*** 倒计时** @author WadeYu* @date 2012-04-20 17:40* @copyright boyaa.com*/ var TimeCountDown = function( initTime ){var day = 0;var hour = 0;var minute = 0;var second = 0;var timerId = 0;var self = this;var fixInitTime = function(){initTime = parseInt(initTime);if ( isNaN(initTime) || initTime initTime = 0;}};var fixZero = function(num){return num };var calc = function(){showCallback.call(self, [fixZero(day), fixZero(hour), fixZero(minute), fixZero(second)]);if ( day === 0 && hour === 0 && minute === 0 && second === 0){self.stop();} else {if (hour === 0 && day > 0){hour = 24;day--;}if (minute === 0 && hour > 0){minute = 60;hour--;}if (second === 0 && minute > 0){second = 59;minute--;} else {second--;}timerId = window.setTimeout(function(){calc();}, 1000);}};var showCallback = function(){alert('Please set show callback functions!');};var init = function(){fixInitTime();if ( initTime > 0 ){day = Math.floor( (initTime / (24*60*60)) );initTime -= day * 24*60*60;hour = Math.floor( initTime / (60*60) );initTime -= hour * 60*60;minute = Math.floor( initTime / 60 );second = initTime - minute * 60;}};this.start = function(){calc();};this.stop = function(){timerId && window.clearTimeout(timerId);};this.setShowCallback = function(fn){typeof(fn) === 'function' ? (showCallback = fn) : '';};init();};示例如下:复制代码代码如下:
相关文章
- css常见问题解决方法小结_经验交流
- 最新优化收藏到网摘代码(digg,diigo)
- 实现jquery懒加载、回到顶部
- 最佳的网站设计公司用于您的业务:GD编码员的全球专业知识
- 如何在 jQuery 中正确获取并使用自定义属性值设置 Cookie
- Vue文档中的条件渲染函数实现程度分析
- 使用jQuery实现网页分页功能的完整方案
- Node.js node-schedule定时任务隔多少分钟执行一次的方法_node.js
- 如何修复CSS溢出显示省略号text-overflow在多行下的兼容坑_使用-webkit-line-clamp
- JS实现仿百度输入框自动匹配功能的示例代码_javascript技巧
