如何在网页中显示服务器时间
更新时间:2013年03月29日 00:00:33 作者:
在网页上显示时间,如果取的是用户本机的时间,由于用户的时间往往不准确,所以显示的有问题。而服务器时间一般不会误差太大,所以最好显示服务器时间
下面以asp+js为例说明。具体代码可以到本站的网页时间代码下载。
下面分析代码结构,先是获取服务器时间:
复制代码 代码如下:
<%
d=Date()
t=Time()
%>
var t0=new Date().getTime();
var nyear=<%=Year(d)%>;
var nmonth=<%=Month(d)%>;
var nday=<%=Day(d)%>;
var nwday=<%=WeekDay(d)%>-1;
var nhrs=<%=Hour(t)%>;
var nmin=<%=Minute(t)%>;
var nsec=<%=Second(t)%>;
//获得本机时间和服务器时间之差
var dectime=new Date(nyear,nmonth-1,nday,nhrs,nmin,nsec).getTime()-t0;
nday=-1;
//用于显示时间的span
document.write("<span id=\"clock\" style=\"word-break:keep-all\"></span>");
//时间计算函数:
function NewTick(){
var noww=new Date();
var t1=noww.getTime();
noww.setTime(t1+dectime);
if(noww.getDate()!=nday){
nyear=noww.getFullYear();nmonth=noww.getMonth()+1;nwday=noww.getDay();nday=noww.getDate();
}
nhrs=noww.getHours();nmin=noww.getMinutes();nsec=noww.getSeconds();
}
//时间显示函数:
function Draw(){
NewTick(); //先计算
var s=nyear+'年'+nmonth+'月'+nday+'日 '+'星期'+cweekday(nwday)+' '+shapetime(nhrs,nmin,nsec);
s+=" 农历"+lmonth+"月"+lday;//显示农历
document.getElementById("clock").innerHTML=s;
//每隔500毫秒重新获取一下本机时间:
setTimeout("Draw()",500);
}
//开始显示:
Draw();
其他问题:
服务器获取的时间不能在本地缓存,所以要在代码中加入缓存控制函数;
还要防止其他网站盗链你的服务器时间代码,所以要加入防盗链函数。
如果需要显示农历,还需要加入农历运算函数。
具体请下载代码自己看。
相关文章
从0到1搭建后端架构的演进(MVC,服务拆分,微服务,领域驱动)
来腾讯之前在前公司做了3年的后端开发,经历一款SaaS产品从0到10(还没有到100, 哈哈哈)的过程,3年间后端的架构逐步演变,在微服务的实践过程中遇到的问题也越来越多,在这里总结下2021-08-08UTF-8 GBK UTF8 GB2312 之间的区别和关系介绍
UTF-8:Unicode TransformationFormat-8bit,允许含BOM,但通常不含BOM。是用以解决国际上字符的一种多字节编码,它对英文使用8位(即一个字节),中文使用24为(三个字节)来编码2011-12-12彻底理解cookie,session,token的使用及原理
这篇文章主要介绍了彻底理解cookie,session,token的使用及原理,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2019-08-08
最新评论