文档章节

也许是最简洁好用的timeago.js库了

小薇
 小薇
发布于 2016/06/24 21:25
字数 581
阅读 149
收藏 13

timeago.js

Github地址:https://github.com/hustcc/timeago.js

timeago.js 是一个非常简洁、轻量级、小于 2kb 的很简洁的Javascript库,用来将datetime时间转化成类似于*** 时间前的描述字符串,例如:“3小时前”。

  • 本地化支持,默认自带中文和英文语言,基本够用;
  • 之前 xxx 时间前、xxx 时间后;
  • 支持npm方式和浏览器script方式;
  • 测试用例完善,执行良好;

关于Python的版本,可以看 timeago.

Build Status npm npm npm

刚刚
12秒前
3分钟前
2小时前
24天前
6月前
3年前

12秒后
3分钟后
2小时后
24天后
6月后
3年后

使用方法

** 1. 下载 timeago.js **

npm install timeago.js

** 2. 引入 timeago.js **

使用import引入,然后可以得到一个全局变量: timeago.

import timeago from 'timeago.js';

// 或者

var timeago = require("timeago.js");

或者直接通过 script 标签引入到html文件中.

<script src="dist/timeago.min.js"></script>

** 3. 使用 timeago 类 **

var timeago = timeago();
timeago.format('2016-06-12')

高级特性使用

** 1. 本地化 **

默认的语言是英文 en, 这个库自带语言有 en and zh_CN (英文和中文).

var timeago = timeago();
timeago.format('2016-06-12', 'zh_CN');

** 2. 注册本地语言 **

你可以自己自定义注册 register 你自己的语言. 如下所示,所有的键值都必须存在,不然可能会出错. e.g.

// 本地化的字典样式
var test_local_dict = {
  'JUST_NOW': ["just now", "a while"],
  'SECOND_AGO': ["%s seconds ago", "in %s seconds"],
  'A_MINUTE_AGO': ["1 minute ago", "in 1 minute"],
  'MINUTES_AGO': ["%s minutes ago", "in %s minutes"],
  'AN_HOUR_AGO': ["1 hour ago", "in 1 hour"],
  'HOURS_AGO': ["%s hours ago", "in %s hours"],
  'A_DAY_AGO': ["1 day ago", "in 1 day"],
  'DAYS_AGO': ["%s days ago", "in %s days"],
  'A_MONTH_AGO': ["1 month ago", "in 1 month"],
  'MONTHS_AGO': ["%s months ago", "in %s months"],
  'A_YEAR_AGO': ["1 year ago", "in 1 year"],
  'YEARS_AGO': ["%s years ago", "in %s years"]
}

var timeago = timeago();
timeago.register('test_local', test_local_dict);

timeago.format('2016-06-12', 'test_local');

** 3. 设置相对日期 **

timeago 默认是相对于当前事件的,当然也可以自己设置相对的时间,如下所示:

var timeago = timeago('2016-06-10 12:12:12'); // 在这里设置相对时间
timeago.format('2016-06-12', 'zh_CN');

** 4. 格式化时间戳 **

timeago().format(new Date().getTime() - 11 * 1000 * 60 * 60); // will get '11 hours ago'

TODO

  • 一个网站的展示页面

LICENSE

MIT

© 著作权归作者所有

共有 人打赏支持
小薇

小薇

粉丝 349
博文 32
码字总数 6185
作品 26
杭州
个人站长
小为/timeago.js

timeago.js timeago.js 是一个非常简洁、轻量级、不到 的很简洁的 Javascript 库,用来将 datetime 时间转化成类似于的描述字符串,例如:“3小时前”。 本地化支持,默认自带中文和英文语言...

小为
2016/09/12
0
0
一个微型 Javascript 开源项目如何在 4 天到 1000 star ?

这里要提到的是我之前从项目抽离出来的微型 Javascript 项目 timeago.js,为什么是微型,因为他还不到 2kb,这个也是做这个项目的原因之一。 已有的类似项目不是一般都依赖 jQuery 和 moment...

小薇
2016/09/13
58
1
时间表达转换--timeago.js

timeago.js 是一个非常简洁、轻量级、小于 2kb 的很简洁的Javascript库,用来将datetime时间转化成类似于 "***时间前"的描述字符串,例如:“3小时前”。 官网地址:http://timeago.org/ 格式...

小薇
2016/06/24
1K
0
2016年10月15个最好的 JavaScript 库

1. g9 g9是一个JavaScript库,用于创建自动交互图形 2. CurrencyFormatter.js CurrencyFormatter.js允许用户将数字格式成各种不同的货币格式。它包含155种货币格式,可以处理异常格式化的货币...

pe_mail2006
2016/11/01
4.3K
8
timeago.js自动将时间戳

首先需要载入jQuery库和timeago.js 接着我们在页面中加入以下代码: 我们给abbr元素设置class为timeago,设置title为标准的ISO 8601时间格式,你也可以使用html5标签time: jQuery 使用jQuer...

土鳖的弟弟
2014/03/22
1K
1

没有更多内容

加载失败,请刷新页面

加载更多

OSChina 周日乱弹 —— 小心着凉 @红薯

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @莱布妮子:5.33起,其声呜呜然,如怨如慕,如泣如诉。余音袅袅,不绝如缕。分享Arch Enemy的单曲《Bridge Of Destiny (2009)》 《Bridge Of...

小小编辑
今天
162
4
what f,,

anlve
今天
2
0
初级开发-编程题

` public static void main(String[] args) { System.out.println(changeStrToUpperCase("user_name_abc")); System.out.println(changeStrToLowerCase(changeStrToUpperCase("user_name_abc......

小池仔
今天
13
0
现场看路演了!

HiBlock
昨天
21
0
Rabbit MQ基本概念介绍

RabbitMQ介绍 • RabbitMQ是一个消息中间件,是一个很好用的消息队列框架。 • ConnectionFactory、Connection、Channel都是RabbitMQ对外提供的API中最基本的对象。Connection是RabbitMQ的s...

寰宇01
昨天
17
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部