带有 Javascript 的 Twitter 风格时间前格式(“2h”)
Twitter-style time-ago formatting ("2h") with Javascript
Timeago.js 在相对于当前时间 ("about 2 hours ago") 格式化时间戳方面做得很好。
是否有任何解决方案可以完成同样的事情,但简化了? IE“2h”,就像 Twitter 使用的那样。
您可以使用 Timeago.js 并用缩写版本覆盖本地时间格式,例如
var locale = function(number, index, total_sec) {
return [
['just now', 'right now'],
['%s s ago', 'in %s s'],
['1 m ago', 'in 1 m'],
['%s m ago', 'in %s m'],
['1 h ago', 'in 1 h'],
['%s h ago', 'in %s h'],
....
][index];
};
timeago.register('pt_ABBR', locale);
var timeagoInstance = timeago();
// then you can use it
timeagoInstance.format(1473245023718, 'pt_ABBR');
在 timeago.js 中,您可以简单地将 "strings" 哈希替换为 "strings" 哈希:https://github.com/rmm5t/jquery-timeago/blob/master/locales/jquery.timeago.en-short.js
jQuery.timeago.settings.strings = {
prefixAgo: null,
prefixFromNow: null,
suffixAgo: "",
suffixFromNow: "",
seconds: "1m",
minute: "1m",
minutes: "%dm",
hour: "1h",
hours: "%dh",
day: "1d",
days: "%dd",
month: "1mo",
months: "%dmo",
year: "1yr",
years: "%dyr",
wordSeparator: " ",
numbers: []
};
Timeago.js 在相对于当前时间 ("about 2 hours ago") 格式化时间戳方面做得很好。
是否有任何解决方案可以完成同样的事情,但简化了? IE“2h”,就像 Twitter 使用的那样。
您可以使用 Timeago.js 并用缩写版本覆盖本地时间格式,例如
var locale = function(number, index, total_sec) {
return [
['just now', 'right now'],
['%s s ago', 'in %s s'],
['1 m ago', 'in 1 m'],
['%s m ago', 'in %s m'],
['1 h ago', 'in 1 h'],
['%s h ago', 'in %s h'],
....
][index];
};
timeago.register('pt_ABBR', locale);
var timeagoInstance = timeago();
// then you can use it
timeagoInstance.format(1473245023718, 'pt_ABBR');
在 timeago.js 中,您可以简单地将 "strings" 哈希替换为 "strings" 哈希:https://github.com/rmm5t/jquery-timeago/blob/master/locales/jquery.timeago.en-short.js
jQuery.timeago.settings.strings = {
prefixAgo: null,
prefixFromNow: null,
suffixAgo: "",
suffixFromNow: "",
seconds: "1m",
minute: "1m",
minutes: "%dm",
hour: "1h",
hours: "%dh",
day: "1d",
days: "%dd",
month: "1mo",
months: "%dmo",
year: "1yr",
years: "%dyr",
wordSeparator: " ",
numbers: []
};