"2015-02-01T08:45:23Z"、特定の時間が与えられたら、どうすれば前の時間に変換できますか?時間のこのタイプで
は、どのように私はJavaScriptで前の時間に変換することができますか?
"2015-02-01T08:45:23Z"、特定の時間が与えられたら、どうすれば前の時間に変換できますか?時間のこのタイプで
は、どのように私はJavaScriptで前の時間に変換することができますか?
momentjs javascript pluginを使用しています。あなたが何かしようとすることができjavascriptの平野使用
moment("2015-02-01T08:45:23Z").startOf('day').fromNow();
:
function since(then) {
var difference = new Date((new Date()) - then),
values = [(difference.getYear() - (new Date(0)).getYear()), difference.getMonth(), difference.getDay(), difference.getHours(), difference.getMinutes(), difference.getSeconds(), difference.getMilliseconds()],
labels = ["Years", "Months", "Days", "Hours", "Minutes", "Seconds", "MilliSeconds"]
return labels.map(function(e, i) {
return values[i] > 0 ? values[i] + " " + e + " " : "";
}).join("");
}
console.log(since(new Date("2015-02-01T08:45:23Z")));
momentjs
あなたはそれができる方法を確認するために他の回答を参照することができ、しかしも良いオプションです使用済み
試用版)
livestamp jQuery(> = 1.7)とMoment.js(> = 1.7)が必要なプラグインを試すことができます。
// Livestamp.js/v1.1.2/(c) 2012 Matt Bradley/MIT License
(function(d,g){var h=1E3,i=!1,e=d([]),j=function(b,a){var c=b.data("livestampdata");"number"==typeof a&&(a*=1E3);b.removeAttr("data-livestamp").removeData("livestamp");a=g(a);g.isMoment(a)&&!isNaN(+a)&&(c=d.extend({},{original:b.contents()},c),c.moment=g(a),b.data("livestampdata",c).empty(),e.push(b[0]))},k=function(){i||(f.update(),setTimeout(k,h))},f={update:function(){d("[data-livestamp]").each(function(){var a=d(this);j(a,a.data("livestamp"))});var b=[];e.each(function(){var a=d(this),c=a.data("livestampdata");
if(void 0===c)b.push(this);else if(g.isMoment(c.moment)){var e=a.html(),c=c.moment.fromNow();if(e!=c){var f=d.Event("change.livestamp");a.trigger(f,[e,c]);f.isDefaultPrevented()||a.html(c)}}});e=e.not(b)},pause:function(){i=!0},resume:function(){i=!1;k()},interval:function(b){if(void 0===b)return h;h=b}},l={add:function(b,a){"number"==typeof a&&(a*=1E3);a=g(a);g.isMoment(a)&&!isNaN(+a)&&(b.each(function(){j(d(this),a)}),f.update());return b},destroy:function(b){e=e.not(b);b.each(function(){var a=
d(this),c=a.data("livestampdata");if(void 0===c)return b;a.html(c.original?c.original:"").removeData("livestampdata")});return b},isLivestamp:function(b){return void 0!==b.data("livestampdata")}};d.livestamp=f;d(function(){f.resume()});d.fn.livestamp=function(b,a){l[b]||(a=b,b="add");return l[b](this,a)}})(jQuery,moment);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="http://momentjs.com/downloads/moment.js"></script>
<script src="https://raw.githubusercontent.com/mattbradley/livestampjs/1.1.2/livestamp.min.js"></script>
<span data-livestamp="2016-10-14T08:45:23Z"></span>
ダウン投票者にこのプラグインに問題がありますか?これは予期したものではありませんか? – itzmukeshy7
おそらくそれはリンクオンリーの回答であるためです。 – doug65536
moment.jsはその後、私は –
あなたがこの... – Geeky
'(Date.now()のためmomentjsを使用することができますかわからない解決しない場合 - +新しい日付( "2015-02-01T08:45:23Z"))/ 86400000'は私に '621.9167401157407'日前にそれを渡しますが、完全にクロスブラウザではありません。幅広いブラウザのサポートには、moment.jsを使用してください。 1日= 86400000ミリ秒。 – doug65536