-1

我的网页中有一小部分使用定义列表来显示我不定期发布的一些帖子,我认为使用 Javascript 为每个帖子添加时间功能会是一件好事。

HTML

<dl>    
<dt>Display the time here</dt>
<dd></dd>
<div id="centrated">
<p>Blank Space</p>
</div>
</dl>

时间应该基于“用户”而不是我的系统。

4

2 回答 2

0

我不确定您打算如何使用您在此处描述的内容检索帖子的日期/时间。但是,javascript 知道如何将 UTC 转换为浏览器的本地时间。

因此,如果您从字符串创建新日期:

var d = new Date("2012-10-13T09:40:34.764Z");
alert(d);

它应该在当地时间为您显示。'Z'日期末尾的 表示它是 UTC 时间。如果您以这种方式定义日期,Javasript 知道如何使用它。只要确保您以 UTC 时间保存日期即可。

于 2012-10-13T21:56:51.350 回答
0

也许你的意思是

var UTCPostedTimeInMs = 1350050604350;
var timeSince = (new Date) - UTCPostedTimeInMs,
    secs = ~~(timeSince / 1000),
    mins = ~~(secs / 60),
    hrs = ~~(mins / 60),
    days = ~~(hrs / 24);

console.log('It has been', days, 'days', hrs % 24, 'hours', mins % 60, 'mins and', secs % 60, 'seconds since', new Date(UTCPostedTimeInMs));
// It has been 1 days 8 hours 6 mins and 12 seconds since Fri Oct 12 2012 15:03:24 GMT+0100 (BST)

编辑
要在 HTML 中显示,请给出要附加到id属性的元素

<dt id="post001Time">Display the time here</dt>

然后在 JavaScript 中,但是你希望它格式化,例如

document.getElementById('post001Time').textContent = (hrs % 24) + ' hours and ' + (mins % 60) + ' ago.';

看到这个小提琴

于 2012-10-13T22:10:18.747 回答