定时器每次调用getRTime函数时,EndTime和NowTime都要重新赋值,你把NowTime写死了,所以每次的NowTime都是一样的,
所以时间不会跳动
var the_s = 188888//定义剩余时间, 必须用时间戳.单位为秒setInterval(promote,1000)//每秒执行一次下面的函数
function promote() {
var d = Math.floor((the_s / 3600) / 24)
var g = Math.floor((the_s - d * 24 * 3600) / 3600)
var e = Math.floor((the_s - d * 24 * 3600 - g * 3600) / 60)
var f = (the_s - g * 3600) % 60
var html = "还剩<b>" + d + "</b>天<b>" + g + "</b>时<b>" + e + "</b>分<b>" + f + "</b>秒"
document.getElementById("divdown1").innerHTML = html//这个id是你想要显示的div的id
the_s--
}
我这个定时器比你的好, 用我的. 你只要定义了the_s和要显示在哪的id. 就可以用了.
如你要显示剩余4小时, 那么将4小时转化为秒: 4*60*60=14400, 就这样调用:
var the_s = 14400setInterval(promote,1000)
就ok了. 记得要引用我的函数哟~
一、js实现时间代码
<script type="text/javascript">function showtime(){
var date=new Date()
var year=date.getFullYear()
var month=date.getMonth()+1
var day=date.getDay()
var hours=date.getHours()
var minutes=date.getMinutes()
var seconds=date.getSeconds()
if(day==0){
day=='日'
}
if(seconds<10){
seconds="0"+seconds
}
if (minutes<10) {
minutes="0"+minutes
}
if (hours<10) {
hours="0"+hours
}
var time=year+"/"+month+"/"+day+" "+hours+":"+minutes+":"+seconds
var o=document.getElementById("box")
o.innerHTML=time
setTimeout(showtime,1000)
}
showtime()
</script>
二、注意点
(1)用给变量赋予时间函数,月份要+1;
(2)将时间封装在函数中,好使用setTimeout(showtime,1000)
(3)var o=document.getElementById("box")()中写入想加到的div中的id选择符
(3)o.innerHTML=time是在HTML调用函数重要的语句
(4)该js必须放在想添加的div下面