js实现网页倒计时、网站已运行时间功能的代码3例


Posted in Javascript onApril 14, 2014

1、jQuery.countdown插件

显示格式:50 周 01 天 07 小时 18 分 41 秒(秒为跑秒)
一个页面可以有多个倒计时实例,可以停止和开始,它没有提供太多的功能,但时间格式和输出的尺寸都可以自定义。
目前最新版v2.0.2,官方地址http://hilios.github.io/jQuery.countdown/
例如:

<div id="getting-started"></div>
<script src="http://code.jquery.com/jquery-1.10.2.min.js" type="text/javascript"></script>
<script src="http://hilios.github.io/jQuery.countdown/javascripts/jquery.countdown.min.js"></script>
<script type="text/javascript">
  $('#getting-started').countdown('2016/01/01 00:00', function(event) {
    $(this).html(event.strftime('%w 周 %d 天 %H:%M:%S'));
  });
</script>

输出结果:50 周 01 天 07 小时 18 分 41 秒

注意:如果需要一共还有多少天数用%D,参数说明:

Y: "years"
m: "months"
w: "weeks"
d: "days"
D: "totalDays"
H: "hours"
M: "minutes"
S: "seconds"

2、显示格式:距离结束时间还有:00天05小时25分30秒(秒为跑秒)
<div id="time" class="time"></div>
<script language=javascript>    
function show_date_time(){   
 window.setTimeout("show_date_time()", 1000);   
 target=new Date(2014,0,15,17,0,0);  //注意:表示月份的参数介于 0 到 11 之间。也就是说,如果希望把月设置为8月,则参数应该是7。
 today=new Date();  timeold=(target.getTime()-today.getTime());   
 sectimeold=timeold/1000   
 secondsold=Math.floor(sectimeold);   
 msPerDay=24*60*60*1000   
 e_daysold=timeold/msPerDay   
 daysold=Math.floor(e_daysold);   
 e_hrsold=(e_daysold-daysold)*24;   
 hrsold=Math.floor(e_hrsold);   
 e_minsold=(e_hrsold-hrsold)*60;   
 minsold=Math.floor((e_hrsold-hrsold)*60);   
 seconds=Math.floor((e_minsold-minsold)*60);   
  if (daysold<0) {   
  document.getElementById("time").innerHTML="逾期,倒计时已经失效";   
}   
 else{   
 if (daysold<10) {daysold="0"+daysold}   
 if (hrsold<10) {hrsold="0"+hrsold}   
 if (minsold<10) {minsold="0"+minsold}   
 if (seconds<10) {seconds="0"+seconds}   
 if (daysold>0) {   
  document.getElementById("time").innerHTML="距离结束时间还有:"+daysold+"天"+hrsold+"小时"+minsold+"分"+seconds+"秒";   
 }   
 else   
  document.getElementById("time").innerHTML="<font color=red>距离结束时间还有:"+daysold+"天"+hrsold+"小时"+minsold+"分"+seconds+"秒</font>";  //结束时间小于1天,字体呈红色提醒
}   
}   
show_date_time();   
</script>

3、 显示格式:已运行0 年 1 天 0 小时 4 分钟 35 秒(秒为跑秒)

<span id="sitetime"></span>
<script language=javascript>
function siteTime(){
window.setTimeout("siteTime()", 1000);
var seconds = 1000
var minutes = seconds * 60
var hours = minutes * 60
var days = hours * 24
var years = days * 365
var today = new Date()
var todayYear = today.getFullYear()
var todayMonth = today.getMonth()
var todayDate = today.getDate()
var todayHour = today.getHours()
var todayMinute = today.getMinutes()
var todaySecond = today.getSeconds()
/* Date.UTC() -- 返回date对象距世界标准时间(UTC)1970年1月1日午夜之间的毫秒数(时间戳) 
year - 作为date对象的年份,为4位年份值
month - 0-11之间的整数,做为date对象的月份
day - 1-31之间的整数,做为date对象的天数
hours - 0(午夜24点)-23之间的整数,做为date对象的小时数
minutes - 0-59之间的整数,做为date对象的分钟数
seconds - 0-59之间的整数,做为date对象的秒数
microseconds - 0-999之间的整数,做为date对象的毫秒数 */
var t1 = Date.UTC(2014,0,14,11,19,00)
var t2 = Date.UTC(todayYear,todayMonth,todayDate,todayHour,todayMinute,todaySecond)
var diff = t2-t1
var diffYears = Math.floor(diff/years)
var diffDays = Math.floor((diff/days)-diffYears*365)
var diffHours = Math.floor((diff-(diffYears*365+diffDays)*days)/hours)
var diffMinutes = Math.floor((diff-(diffYears*365+diffDays)*days-diffHours*hours)/minutes)
var diffSeconds = Math.floor((diff-(diffYears*365+diffDays)*days-diffHours*hours-diffMinutes*minutes)/seconds)
document.getElementById("sitetime").innerHTML=" 已运行"+diffYears+" 年 "+diffDays+" 天 "+diffHours+" 小时 "+diffMinutes+" 分钟 "+diffSeconds+" 秒"
}
siteTime()
</script>
Javascript 相关文章推荐
html+javascript实现可拖动可提交的弹出层对话框效果
Aug 05 Javascript
js中return false(阻止)的用法
Aug 14 Javascript
5个JavaScript经典面试题
Oct 13 Javascript
javascript 事件处理示例分享
Dec 31 Javascript
javascript产生随机数方法汇总
Jan 25 Javascript
javascript面向对象程序设计高级特性经典教程(值得收藏)
May 19 Javascript
Node.js+Express配置入门教程详解
May 19 Javascript
jQuery.form.js的使用详解
Jun 14 jQuery
解决vue项目nginx部署到非根目录下刷新空白的问题
Sep 27 Javascript
详解Vue.js iview实现树形权限表(可扩展表)
Sep 30 Javascript
详解vue中使用axios对同一个接口连续请求导致返回数据混乱的问题
Nov 06 Javascript
antd-mobile ListView长列表的数据更新遇到的坑
Apr 08 Javascript
PHP开发者必须掌握的6个关键字
Apr 14 #Javascript
javascript中的括号()用法小结
Apr 14 #Javascript
javascript获取函数名称、函数参数、对象属性名称的代码实例
Apr 12 #Javascript
jQuery操作表格(table)的常用方法、技巧汇总
Apr 12 #Javascript
JS获取URL中参数值(QueryString)的4种方法分享
Apr 12 #Javascript
javascript对JSON数据排序的3个例子
Apr 12 #Javascript
Js保留小数点的4种效果实现代码分享
Apr 12 #Javascript
You might like
PHP 序列化和反序列化函数实例详解
2020/07/18 PHP
PHP生成zip压缩包的常用方法示例
2019/08/22 PHP
XRegExp 0.2: Now With Named Capture
2007/11/30 Javascript
javascript面向对象之二 命名空间
2011/02/08 Javascript
jquery load事件(callback/data)使用方法及注意事项
2013/02/06 Javascript
js脚本获取webform服务器控件的方法
2014/05/16 Javascript
jQuery内置的AJAX功能和JSON的使用实例
2014/07/27 Javascript
分享一个常用的javascript静态类
2014/12/31 Javascript
讲解JavaScript的Backbone.js框架的MVC结构设计理念
2016/02/14 Javascript
Angularjs 滚动加载更多数据
2016/03/17 Javascript
jQuery实现文字自动横移
2017/01/08 Javascript
javascript 组合按键事件监听实现代码
2017/02/21 Javascript
vue-cli 自定义指令directive 添加验证滑块示例
2017/10/19 Javascript
js获取html页面代码中图片地址的实现代码
2018/03/05 Javascript
Angular 容器部署的方法
2018/04/17 Javascript
浅谈vue项目用到的mock数据接口的两种方式
2019/10/09 Javascript
[35:44]2014 DOTA2华西杯精英邀请赛 5 24 iG VS VG
2014/05/26 DOTA
python将多个文本文件合并为一个文本的代码(便于搜索)
2011/03/13 Python
压缩包密码破解示例分享(类似典破解)
2014/01/17 Python
python Pandas 读取txt表格的实例
2018/04/29 Python
python 简单照相机调用系统摄像头实现方法 pygame
2018/08/03 Python
Linux系统(CentOS)下python2.7.10安装
2018/09/26 Python
python数据爬下来保存的位置
2020/02/17 Python
StubHub墨西哥:购买和出售您的门票
2016/09/17 全球购物
世界经理人咨询有限公司面试
2014/09/23 面试题
十八届三中全会学习方案
2014/02/16 职场文书
总账会计岗位职责
2014/03/13 职场文书
党员领导干部承诺书
2014/05/28 职场文书
社区服务活动小结
2014/07/08 职场文书
党员四风剖析材料
2014/08/27 职场文书
高二学年自我鉴定范文(2篇)
2014/09/26 职场文书
求职信内容一般写什么?
2015/03/20 职场文书
2015年感恩节活动总结
2015/03/24 职场文书
2015年秘书个人工作总结
2015/04/25 职场文书
卫生院艾滋病宣传活动总结
2015/05/09 职场文书
钱学森观后感
2015/06/04 职场文书