<p id="labTime">
<script type="text/javascript">
//取客户端时间
setInterval("labTime.innerText=new Date().toLocaleString()", 1000) //每1000毫秒(即1秒) 执行一次本段代码
</script>
</p>

获取服务器时间:
var xmlHttp = false;
//获取服务器时间
try {
xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e2) {
xmlHttp = false;
}
}

if (!xmlHttp && typeof XMLHttpRequest != 'undefined') {
xmlHttp = new XMLHttpRequest();
}

xmlHttp.open("GET", "null.txt", false);
xmlHttp.setRequestHeader("Range", "bytes=-1");
xmlHttp.send(null);

severtime = new Date(xmlHttp.getResponseHeader("Date"));

//获取服务器日期
var year = severtime.getFullYear();
var month = severtime.getMonth() + 1;
var date = severtime.getDate();
//获取服务器时间
var hour = severtime.getHours();
var minu = severtime.getMinutes();
var seco = severtime.getSeconds();
var week = ' 星期' + '日一二三四五六'.charAt(severtime.getDay());

//格式化输出服务器时间
function getSeverTime() {
seco++;
if (seco == 60) {
minu += 1;
seco = 0;
}
if (minu == 60) {
hour += 1;
minu = 0;
}
if (hour == 24) {
date += 1;
hour = 0;
}
//日期处理
if (month == 1 || month == 3 || month == 5 || month == 7 || month == 8 || month == 10 || month == 12) {
if (date == 32) {
date = 1;
month += 1;
}
} else if (month == 4 || month == 6 || month == 9 || month == 11) {
if (date == 31) {
date = 1;
month += 1;
}
} else if (month == 2) {
if (year % 4 == 0 && year % 100 != 0) {//闰年处理
if (date == 29) {
date = 1;
month += 1;
}
} else {
if (date == 28) {
date = 1;
month += 1;
}
}
}
if (month == 13) {
year += 1;
month = 1;
}
sseco = addZero(seco);
sminu = addZero(minu);
shour = addZero(hour);
sdate = addZero(date);
smonth = addZero(month);
syear = year;

innerdata = "现在时间:";
document.getElementById("servertime").innerHTML = innerdata + syear + "-" + smonth + "-" + sdate + " " + shour + ":" + sminu + ":" + sseco + " " + week;
setTimeout("getSeverTime()", 1000);
setTimeout("getClientTime()", 100);
}

function addZero(num) {
num = Math.floor(num);
return ((num <= 9) ? ("0" + num) : num);
}

<body onload="getSeverTime();" > //放到body里面让浏览器加载时运行
<p id="servertime"></p> //把这个放在要显示的地方
</body>

原文:https://blog.csdn.net/bingle14/article/details/50965666

利用JS获取本地时间和服务器时间的更多相关文章

  1. 利用js 获取本日 本周 本月时间代码

    function showToDay() { var Nowdate=new Date(); M=Number(Nowdate.getMonth())+1 alert(Nowdate.getMonth ...

  2. 利用JS获取地址栏的中文参数

    地址栏中为:localhost:22865/ZYHSYY.aspx?BQH=305&DoctorName=张三&DoctorId=100我想利用JS获取到“张三”,请问该如何写js?目 ...

  3. java 在web应用中获取本地目录和服务器上的目录不一致的问题

    先来讲讲我所遇到的问题.最近有个新的项目添加新的功能. 修改之后部署到服务器上面发现取到classpath目录跑到别的地方去了.在本地测试却正常. 当时毛的着火了.硬是想不懂什么问题. 终于发现了这个 ...

  4. java 项目时间和服务器时间不一致

    今天线上项目关于时间的几个任务都出了问题,查看日志发现日志的时间不对,用的是log4j,日志输出的时间都早了很长时间. 1 首先先登上服务器查看了服务器的系统时间 linux下 date命令 时间正确 ...

  5. 利用js获取时间并输出值

    <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...

  6. Js 获取 本周、本月起始时间

    涉及到显示本月或本周相关信息,又不想让php去判断,只好直接用js去计算,麻烦了好一阵,还是老老实实的看了下js的日期函数.现总结一下: //计算本周起始日期,并以 Y-m-d 形式返回.    fu ...

  7. Js获取当前的日期和时间以及时间戳转化为时间

    /** *获取当前时间 *format=1精确到天 *format=2精确到分 */ function getCurrentDate(format) { var now = new Date(); v ...

  8. js获取格式化后的当前时间

    代码如下: function getFormatDate() { var day=new Date(); var Year=0; var Month=0; var Day=0; var Hour = ...

  9. js获取前几天的时间及时间区间

    /** * 以startDate为开始日期,计算时隔days天之后 的日期区间 * @param startDate 开始日期 * @param days 时间间隔天数 */ function get ...

随机推荐

  1. ceph卸载

    1.正常卸载 ceph-deploy purge ceph01 ceph-deploy purgedata ceph01 rm -rf /var/lib/ceph rm -rf /etc/ceph r ...

  2. C++11中的to_string

    C++11之前,标准库没有提供数字类型转字符串的函数,需要借助sprintf.stringstream等,现在C++11提供了std::to_string函数,可以直接使用了: 点击(此处)折叠或打开 ...

  3. lshw查看系统硬件信息

    lshw(Hardware Lister)是另外一个可以查看硬件信息的工具,不仅如此,它还可以用来做一些硬件的benchmark. lshw is a small tool to extract de ...

  4. python文件操作os模块

    Python 统计某一文件夹下文件数量 使用python  pathlib模块 from pathlib import Path dir_path = ' ' print(len(list(Path( ...

  5. [原创] 改善 Firemonkey Canvas 几何绘图质量问题(移动平台)

    说明: Fiiremonkey 的跨平台能力,大家有目共睹(一码同介面跨四平台),唯独移动平台在几何绘图方面,质量始终不尽人意,我也曾试着去修正(如:修正曲线平滑问题),也曾找过第三方案(如:AggP ...

  6. 多线程“尚未调用coinitialize” 报错

    关于多线程中创建使用TADOConnect.TADODataSet等Com组件时,必须先初始化Com 在多线程启用执行前 CoInitialize(nil); 在多线程启用执行后 CoUninitia ...

  7. .NET WCF Return String 字符串有反斜杠的处理

    应该是: {"Message":"Hello World"} 结果是:" {\"Message\":\"Hello Wo ...

  8. 反射:获取Class对象的三种方式

    获取Class对象的三种方式 package lianxiApril18; /** * 获取Class对象的三种方式 * 1 Object ——> getClass(); * 2 任何数据类型( ...

  9. LightOJ 1234 Harmonic Number(打表 + 技巧)

    http://lightoj.com/volume_showproblem.php?problem=1234 Harmonic Number Time Limit:3000MS     Memory ...

  10. 使用InstallUtil安装或卸载服务

    使用InstallUtil安装或卸载服务 一.安装服务: C:\Windows\Microsoft.NET\Framework\v4.0.30319\InstallUtil.exe D:\MyServ ...