刚才在首页看到 asp.net实现动态显示当前时间 这篇文章, 作者用Ajax实现类似时钟的效果!
个人感觉完全为了Ajax而Ajax就不好了!JavaScript在客户端处理不是更理想吗?
function
Clock() {
var date = new Date();
this .year = date.getFullYear();
this .month = date.getMonth() + 1 ;
this .date = date.getDate();
this .day = new Array( " 星期日 " , " 星期一 " , " 星期二 " , " 星期三 " , " 星期四 " , " 星期五 " , " 星期六 " )[date.getDay()];
this .hour = date.getHours() < 10 ? " 0 " + date.getHours() : date.getHours();
this .minute = date.getMinutes() < 10 ? " 0 " + date.getMinutes() : date.getMinutes();
this .second = date.getSeconds() < 10 ? " 0 " + date.getSeconds() : date.getSeconds();
this .toString = function () {
return " 现在是: " + this .year + " 年 " + this .month + " 月 " + this .date + " 日 " + this .hour + " : " + this .minute + " : " + this .second + " " + this .day;
};
this .toSimpleDate = function () {
return this .year + " - " + this .month + " - " + this .date;
};
this .toDetailDate = function () {
return this .year + " - " + this .month + " - " + this .date + " " + this .hour + " : " + this .minute + " : " + this .second;
};
this .display = function (ele) {
var clock = new Clock();
ele.innerHTML = clock.toString();
window.setTimeout( function () { clock.display(ele); }, 1000 );
};
}
var date = new Date();
this .year = date.getFullYear();
this .month = date.getMonth() + 1 ;
this .date = date.getDate();
this .day = new Array( " 星期日 " , " 星期一 " , " 星期二 " , " 星期三 " , " 星期四 " , " 星期五 " , " 星期六 " )[date.getDay()];
this .hour = date.getHours() < 10 ? " 0 " + date.getHours() : date.getHours();
this .minute = date.getMinutes() < 10 ? " 0 " + date.getMinutes() : date.getMinutes();
this .second = date.getSeconds() < 10 ? " 0 " + date.getSeconds() : date.getSeconds();
this .toString = function () {
return " 现在是: " + this .year + " 年 " + this .month + " 月 " + this .date + " 日 " + this .hour + " : " + this .minute + " : " + this .second + " " + this .day;
};
this .toSimpleDate = function () {
return this .year + " - " + this .month + " - " + this .date;
};
this .toDetailDate = function () {
return this .year + " - " + this .month + " - " + this .date + " " + this .hour + " : " + this .minute + " : " + this .second;
};
this .display = function (ele) {
var clock = new Clock();
ele.innerHTML = clock.toString();
window.setTimeout( function () { clock.display(ele); }, 1000 );
};
}
将Clock封装好后,只需在需要显示的页面添加JS代码:
var
clock
=
new
Clock();
clock.display( " 需要显示的标签 " )
clock.display( " 需要显示的标签 " )
如此即可实现时钟效果