javascript - 使用服务器端系统时间的客户端时钟

标签 javascript asp.net .net

我在 .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();
});

Fiddle

这样您将使用服务器时间,但您不需要在每次页面加载时多次请求它,从而避免了不必要的 AJAX 调用。除非你的服务器有核级时钟或类似的东西。

关于javascript - 使用服务器端系统时间的客户端时钟,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14385628/

相关文章:

javascript - stackable.js 表格背景颜色不起作用

javascript - 存储图像最有效的方式是什么? HTML/CSS/JS

javascript - 与 CKEditor 3 集成的 ASPNetSpell 拼写检查器不适用于 Chrome

javascript - 如何使用 JavaScript/Jquery 将数据保存在 JSON 文件中

javascript - 如何将参数传递给这个签名?

asp.net - 如何在visual studio中查看cshtml页面?

asp.net - 导出PhoneGap的ASP.NET MVC应用程序源代码

c# - EF Core 3.1 - 如何使用 InMemory Provider 检测客户端评估错误?

.NET SOAP 常见类型

c# - 如何将透明光标渲染到保留 alpha channel 的位图?