2012/11/5 19:16:03作者:佚名来源:网络
【实例名称】
利用JS计算距离某天的时间
【实例描述】
距离某天的时间一般用于提醒特别重大的日子,如建国、结婚纪念日等。本例以建国日为标准,学习如何获取距离某天的时间。
【实例代码】
<html xmlns="http://www.w3.org/1999/xhtml" > <head> <title>标题页-学无忧(www.xue51.com)</title> </head> <body bgcolor="#fef4d9" onLoad="startclock()"> <SCRIPT LANGUAGE="JavaScript"> //基本变量的定义 var timerID; var timerRunning = false; var today = new Date(); var startday = new Date(); var secPerDay = 0; var minPerDay = 0; var hourPerDay = 0; var secsLeft = 0; var secsRound = 0; var secsRemain = 0; var minLeft = 0; var minRound = 0; var minRemain = 0; var timeRemain = 0;
//停止定时器的方法 function stopclock() { if(timerRunning) clearTimeout(timerID);
timerRunning = false; } //开始定时器的方法 function startclock() { stopclock(); showtime1(); } //计算时间的方法 function showtime1() { startday = new Date("Oct 20, 1949 00:00 EDT"); //创建初始时间 startday.setYear("1949"); //设置年份 today = new Date(); //获取当前时间 secsPerDay = 1000 ; //最终转换为毫秒 minPerDay = 60 * 1000 ; //每分钟的毫秒 hoursPerDay = 60 * 60 * 1000; //每小时的毫秒 PerDay = 24 * 60 * 60 * 1000; //每天的毫秒
/* Seconds */ secsLeft = (today.getTime() - startday.getTime()) / minPerDay; //距今天的分钟数 secsRound = Math.round(secsLeft); //四舍五入 secsRemain = secsLeft - secsRound; secsRemain = (secsRemain < 0) ? secsRemain = 60 - ((secsRound - secsLeft) * 60) : secsRemain = (secsLeft - secsRound) * 60; secsRemain = Math.round(secsRemain); //计算取分钟后剩余的秒数
/* 分钟*/ minLeft = ((today.getTime() - startday.getTime()) / hoursPerDay); //距今天的小时数 minRound = Math.round(minLeft); //四舍五入 minRemain = minLeft - minRound; minRemain = (minRemain < 0) ? minRemain = 60 - ((minRound - minLeft) * 60) : minRemain = ((minLeft - minRound) * 60); minRemain = Math.round(minRemain - 0.495); //计算取小时后剩余的分钟数
/* 小时 */ hoursLeft = ((today.getTime() - startday.getTime()) / PerDay); //距今天的天数 hoursRound = Math.round(hoursLeft); //四舍五入 hoursRemain = hoursLeft - hoursRound; hoursRemain = (hoursRemain < 0) ? hoursRemain = 24 - ((hoursRound - hoursLeft) * 24) : hoursRemain = ((hoursLeft - hoursRound) * 24); hoursRemain = Math.round(hoursRemain - 0.5); //计算取天数后剩余的小时数
/* 天 */ daysLeft = ((today.getTime() - startday.getTime()) / PerDay); //距今天的天数 daysLeft = (daysLeft - 0.5); daysRound = Math.round(daysLeft); //四舍五入 daysRemain = daysRound;
/* Time */ day_rem = " 天, " hour_rem = " 小时, " min_rem = " 分, " sec_rem = " 秒" timeRemain = daysRemain + day_rem + hoursRemain + hour_rem + minRemain + min_rem + secsRemain + sec_rem; document.up.myTxt.value = timeRemain; //使用文本框输出内容 timerID = setTimeout("showtime1()",1000); //每隔1秒更新下时间 timerRunning = true; }
</SCRIPT> <FORM NAME="up"> <INPUT TYPE="text" NAME="myTxt" SIZE="47" VALUE=""> </FORM> <P> <FONT SIZE=+1 FACE="Arial"> 距离建国已经 </FONT> </body> </html>
【运行效果】

【难点剖析】
本例的重点在于时间(天、时、分、秒)的获取。在“showtimel”方法中,使用“new Date("Oct 1,1949 00:00EDT”)”创建了一个建国日期对象,又使用“new Date()
获取当前的日期对象。最后分别获取两个时间的天数、小时,分、秒的间隔,并在文本框中显示最后的计算结果。
【源码下载】
为了JS代码的准确性,请点击:距离某天的时间 进行本实例源码下载
标签: JS计算 时间
相关文章
够快云库v6.3.24.12120免费版
详情
光影魔术手官方版 v4.7.1
详情
ADsafe净网大师v5.4.408.7000
详情
网易邮箱大师v5.3.2.1015电脑版
详情
foxmailv7.2.25.375
详情
暴风影音5v5.92.0824.1111
详情
暴风影音v5.92.0824.1111
详情
BitComet(比特彗星)v2.13.4.13Beta2
详情
路由优化大师v4.5.31.267
详情
茄子快传电脑版 v5.1.0.7
详情
搜狐影音 v7.2.1.0官方版
详情
搜狐影音客户端 v7.2.1.0
详情
迅雷影音官方版 v7.0.3.92
详情
cbox央视影音v6.0.3.4经典版
详情
potplayer播放器v1.7.22496
详情
Daum PotPlayer(已集成直播源)v1.7.22496绿色纯净美化便携增强版
详情
NBA2K21曼巴永恒版v1.0中文
详情
赛博朋克2077v1.0中文
详情
天国拯救2黄金版 Build.17149332-1.1.1.11377中文版
详情
燕云十六声电脑版 v1.9.31
详情
潜行者2:切尔诺贝利之心 Build.16805297豪华中文版
详情
模拟农场25豪华中文版
详情
迷你世界电脑版 v1.41.00
详情
骑马与砍杀2 v1.2.9.34019免费版
详情
侠盗猎车手圣安地列斯 v1.0最新中文版
详情
整蛊白云 v1.0
详情
地平线4 v1.476中文版
详情
圣女战旗中文v1.1.9绿色免安装版
详情
狂怒2中文
详情
红色警戒2共和国之辉电脑版 v1.0
详情
模拟人生4 v1.0中文免费版
详情
蛊婆v1.0免费版
详情
思尔健康v3.1.59安卓版
详情
小豆苗疫苗助手v8.3.5官方版
详情
京东极速版v1.2.0安卓版
详情
猫耳fmv6.5.4免付费版
详情
番茄畅听红包版v6.2.2.32安卓版
详情
网易蜗牛读书v1.9.9安卓最新版
详情
我的健身教练2单机版v2.0安卓版
详情
钢铁英雄(Heroes of Steel Elite)v4.5.21无限金币钻石版
详情
有声英语小说appv1.3.4去广告最新版
详情
造梦无双v1.02九游版
详情
西部大逃杀v1.1.2无限金币版
详情
春秋霸业v1.15.00.153手游官方版
详情
熊猫打折v5.7手机版
详情
猫爪弹唱v1.0.4免费版
详情
战国志v1.196759变态版
详情
精灵学院大冒险v1.1.0.00480004满级vip版
详情