使用moment.js转换日期格式

时间:2012-12-06 05:30:16

标签: javascript jquery momentjs

我想使用Javascripy / jQuery转换以下日期。我的研究似乎指向了看起来很棒的moment.js,但我似乎无法指出它。 (JS半正教)

<div class="date">01-06-2012</div> convert to display January 6
<div class="date">05-14-2012</div> convert to display May 14
<div class="date">06-16-2012</div> to display June 16

如果日期在过去的24小时内,如果相同的逻辑可以向div应用额外的类,那将是非常棒的,所以我可以稍微改变它们的样式。也许有过去24小时内的日期添加一个类而不是日期显示“新”。

谢谢!

1 个答案:

答案 0 :(得分:23)

$(function () {
  $('.date').each(function (index, dateElem) {
    var $dateElem = $(dateElem);
    var formatted = moment($dateElem.text(), 'MM-DD-YYYY').format('MMMM D');
    $dateElem.text(formatted);
   })
 });​

http://jsfiddle.net/x2fDP/

对于第2部分,尝试使用new Date().getTime() - textMoment.valueOf()(其中textMoment是从div文本创建的解析时刻实例)来获取该日期之前的毫秒数,如果该数字低于阈值,则使用{{ 1}}