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 相关文章推荐
IE与FireFox中的childNodes区别
Oct 20 Javascript
jquery配合css简单实现返回顶部效果
Sep 30 Javascript
jQuery实现360°全景拖动展示
Mar 18 Javascript
AngularJS仿苹果滑屏删除控件
Jan 18 Javascript
基于jQuery实现仿百度首页选项卡切换效果
May 29 Javascript
浅谈js里面的InttoStr和StrtoInt
Jun 14 Javascript
利用require.js与angular搭建spa应用的方法实例
Jul 19 Javascript
Angular项目从新建、打包到nginx部署全过程记录
Dec 09 Javascript
bootstrap+spring boot实现面包屑导航功能(前端代码)
Oct 09 Javascript
Vue+Element UI 树形控件整合下拉功能菜单(tree + dropdown +input)
Aug 28 Javascript
JavaScript中常用的3种弹出提示框(alert、confirm、prompt)
Nov 10 Javascript
vue实现滑动解锁功能
Mar 03 Vue.js
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
杏林同学录(二)
2006/10/09 PHP
PHP计划任务之关闭浏览器后仍然继续执行的函数
2010/07/22 PHP
PHP 设置MySQL连接字符集的方法
2011/01/02 PHP
php编写一个简单的路由类
2011/04/13 PHP
php+xml编程之SimpleXML的应用实例
2015/01/24 PHP
JS执行删除前的判断代码
2014/02/18 Javascript
js由下向上不断上升冒气泡效果实例
2015/05/07 Javascript
JS验证IP,子网掩码,网关和MAC的方法
2015/07/02 Javascript
js实现String.Fomat的实例代码
2016/09/02 Javascript
深入理解jquery中的each用法
2016/12/14 Javascript
Express URL跳转(重定向)的实现方法
2017/04/07 Javascript
详解AngularJS controller调用factory
2017/05/19 Javascript
详解wow.js中各种特效对应的类名
2017/09/13 Javascript
vue实现点击选中,其他的不选中方法
2018/09/05 Javascript
js实现窗口全屏示例详解
2019/09/17 Javascript
vue-cli设置css不生效的解决方法
2020/02/07 Javascript
python实现多线程的两种方式
2016/05/22 Python
使用Python对MySQL数据操作
2017/04/06 Python
深入flask之异步非堵塞实现代码示例
2018/07/31 Python
Python实现基于POS算法的区块链
2018/08/07 Python
10分钟教你用Python实现微信自动回复功能
2018/11/28 Python
使用Filter过滤python中的日志输出的实现方法
2019/07/17 Python
Python读取实时数据流示例
2019/12/02 Python
CSS3实现背景透明文字不透明的示例代码
2018/06/25 HTML / CSS
写出二分查找算法的两种实现
2013/05/13 面试题
俄语专业毕业生推荐信
2013/10/28 职场文书
鼓励运动员的广播稿
2014/02/08 职场文书
文化产业实施方案
2014/06/07 职场文书
监察局领导班子四风问题整改措施思想汇报
2014/10/05 职场文书
六查六看心得体会
2014/10/14 职场文书
事业单位个人总结
2015/02/12 职场文书
2016年“我们的节日·重阳节”主题活动总结
2016/04/01 职场文书
五年级作文之劳动作文
2019/11/12 职场文书
关于springboot 配置date字段返回时间戳的问题
2021/07/25 Java/Android
Win11跳过联网界面创建本地管理账户的3种方法
2022/04/20 数码科技
利用Python实现翻译HTML中的文本字符串
2022/06/21 Python