以上时间,秒针自动走动;
秒针走动要用定时器来设置;
因为时间是从new Date( )上自动获取的,所以我们要从new Date( )开始设置定时器;
js:
window.onload = function(){
// 把时间放在body页面中
var oBody = document.body;
setInterval(fnTime,1000);//开启定时器,一秒钟走一下
fnTime();//一开始就显示,刷新之后不会延迟一秒显示
// ①封装时间函数
function fnTime(){
var myTime = new Date();//获取当前系统的时间对象
var iYear = myTime.getFullYear();//获得当前年份
var iMonth = myTime.getMonth() + 1;//月份比较特殊是从0开始算,所以要加1;
var iDate = myTime.getDate();
var iWeek = myTime.getDay();//得到周几(星期几)
var iHours = myTime.getHours();//得到当前的小时
var iMinutes = myTime.getMinutes();//得到当前的分钟
var iSeconds = myTime.getSeconds();//得到当前秒数
var str = '';
if(iWeek === 0)iWeek = '星期日';
if(iWeek === 1)iWeek = '星期一';
if(iWeek === 2)iWeek = '星期二';
if(iWeek === 3)iWeek = '星期三';
if(iWeek === 4)iWeek = '星期四';
if(iWeek === 5)iWeek = '星期五';
if(iWeek === 6)iWeek = '星期六';
str = iYear+'年'+iMonth+'月'+iDate+'日 '+iWeek+toTwo(iHours)+':'+toTwo(iMinutes)+':'+toTwo(iSeconds);
// alert(str);//2017年8月11日星期五22:15:50
oBody.innerHTML = str;
}
// ②封装函数,让秒针变成双数不是单数;
function toTwo(n){
return n < 10 ? '0' + n : ''+n;
}
}
注意:
1、首先要封装时间函数;
2、开启定时器后一定要再次调用时间函数,以防刷新时延迟一秒钟;
3、因为时间函数中获取的是数字,所以时、分、秒要在十位数上补零,封装函数让单数变成双数;
哪个需要补零,就直接用toTwo( )函数toTwo(iHours)
;