我的本地服务器和浏览器(本地系统)有一个工作时钟。两者都很好用。现在我要做的是找到时钟之间的时间偏移,基于秒,并将其添加到本地系统时钟。
例如:我的系统时钟是:10:00:00,服务器时钟是同一天的 12:15:00。那么偏移量将是:02:15:00(当然它会以秒为单位,但只是对于我这样写的示例)。然后将其添加到(浏览器)本地时间,以便我最终显示服务器时间。12:15:00。
这就是我在这里所做的:
var interval = self.setInterval(function(){
clock();
},1000);
function clock()
{
//Get local server time
<?php $today = getdate(); ?>;
var ser = <?php echo $today[0]; ?>;
//Local client time
var seconds = Date.now();
var offset = seconds-ser*1000;
parseInt(offset/1000);
var d = new Date();
d.setTime(Date.now()-offset);
var h = d.getHours();
var m = d.getMinutes();
var s = d.getSeconds();
if(s < 10)
s = "0" + s;
if(m < 10)
m = "0" + m;
if(h < 10)
h = "0" + h;
var tm = h+":"+m+":"+s;
document.getElementById("clock").value = tm;
}
但只要我把变量
offset
在这一行:d.setTime(Date.now()-offset);
时钟不再更新。我猜PHP兼容性存在问题。知道如何解决吗?谢谢