如何用javascript动态显示键盘输入时间和当前时间的时差(小时分钟秒)?

JavaScript08

如何用javascript动态显示键盘输入时间和当前时间的时差(小时分钟秒)?,第1张

<html>

<head><title>test</title></head>

<body>

<input id="hour" style="width:2em" value="5" />:<input id="min" style="width:2em" value="20" />

<button id="do">确定</button>

<div id="info" style="display:none">

当前时间:<span id="cur_time"></span><br>

时 间 差:<span id="time_span"></span>

</div>

<script type="text/javascript">

function $(id){ return document.getElementById(id)}

function time_add_sec(secs){

if(secs != 0){ secs = 1}

window.curtime += secs

var span = Math.abs(curtime - starttime)

var cur_time = []

var time_span = []

cur_time[0] = Math.floor(curtime / 3600)

cur_time[1] = Math.floor((curtime % 3600) / 60)

cur_time[2] = Math.floor(curtime % 60)

time_span[0] = Math.floor(span / 3600)

time_span[1] = Math.floor((span % 3600) / 60)

time_span[2] = Math.floor(span % 60)

$("cur_time").innerHTML = cur_time.join(":")

$("time_span").innerHTML = time_span.join(":")

}

function time_span(){

var now = new Date()

var cur_time = []

cur_time[0] = now.getHours()

cur_time[1] = now.getMinutes()

cur_time[2] = now.getSeconds()

window.curtime = cur_time[0]*3600+cur_time[1]*60+cur_time[2]

window.starttime = $("hour").value*3600+$("min").value*60

time_add_sec(0)

$("info").style.display = "block"

setInterval(time_add_sec,1000)

}

window.onload=function (){ $("do").onclick = time_span}

</script>

</body>

</html>

这个算法占用系统资源相当少了,跳动应该是你电脑卡吧,我的电脑一点问题都没有。

var regex = /^(19|20)\d{2}((0\d{1})|10|11|12)$/、

//下面的数字你可以改成用户输入的数字

//年份范围从1900-2099之间。如果满足则弹出true,否则false

alert(regex.test("201203"))

function checkDate(d){

da=d.split("\/")

if(da.length!=3){

return false//不符合格式

}

da[0]=da[0]>49? "19"+da[0]:"20"+da[0]//根据年份设置为yyyy格式

var nd=new Date()

nd.setDate(da[2])

nd.setMonth(parseInt(da[1]-1))

nd.setYear(da[0])

if(nd>new Date()) {

return false//当前日期之后

}

else{

return true

}

}

使用方法:

checkDate(用户输入的日期)

如:checkDate(“13/01/15”)

返回值:符合要求则返回true,不符合返回false