时刻.js + 实时戳时间前基于 UTC 来自服务器的日期时间
本文关键字:时间 UTC 服务器 日期 js 实时 时刻 | 更新日期: 2024-11-06 05:45:35
我正在尝试显示我的项目中有人提出的问题。在我的数据库中,我有一个"列出"的日期时间列。当用户发布问题时,我会插入带有UTC DateTime
的问题。
在客户端中,我既有Livestamp.js
又有moment.js
来显示问题被问到的时间。
法典:
var then = moment(listed).unix(); // convert to unix time
然后:
s += "</td><td><span data-livestamp='" + then + "'></span>";
问题是它没有按预期显示时间,更多的时间。
从服务器返回的日期字符串示例:
2015-03-09T09:16:41
我需要一种方法让 livestamp 根据服务器的日期时间并考虑本地 UTC 时间来显示时间,但我不知道如何实现这一点。
注意:很明显,服务器与客户端(访问者)不在同一位置。
使用: MySQL, .NET/C# 4.5, jQuery/Javascript
两年前我遇到了类似的问题,这是我解决它的方法:
var localtime = new Date(new Date(listed).getTime() -
(new Date().getTimezoneOffset() * 60000));
var then = moment(localtime).unix();
编辑:试过这个
var localDate = new Date(new Date('2015-03-09T13:56:41').getTime() -
(new Date().getTimezoneOffset() * 60000));
var then = moment(localDate).unix();
document.getElementById("demo").innerHTML =
"Made it : <span data-livestamp='" + then + "'></span>" ;
//Results: "Made it : 5 minutes ago" as I'm in a +1 timezone