我在 .Net 环境中工作,在我的 aspx 页面上我想添加一个带//秒的运行数字时钟,但我需要它来使用服务器端时间。最好的方法是什么?
谢谢!
最佳答案
拍一个moment查看此 javascript 库。
您只需要向您的 javascript 代码提供您的服务器端时间,可能是通过数据属性之类的东西
即:
<html data-server-time="@Model.ServerTime">
然后你的 JS 应该只是(假设 jQuery 和 moment):
var date = $('html').data('server-time');
var start = new Date();
var updateTime = function (){
setTimeout(function(){
var now = moment(date).add(new Date() - start).format('YYYY/MM/DD HH:mm:ss')
$('.target').text(now);
updateTime();
},1000);
}
$(function(){
updateTime();
});
这样您将使用服务器时间,但您不需要在每次页面加载时多次请求它,从而避免了不必要的 AJAX 调用。除非你的服务器有核级时钟或类似的东西。
关于javascript - 使用服务器端系统时间的客户端时钟,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14385628/