2016-03-23 5 views
0

私はこの時点での時刻から5月8日までの日、時間、分を23:59:59 - 5秒9の1秒前に数えます。 FlipClockでカウンタとして表示しますが、何らかの理由で2日間と1時間が欠落しています。今日の3月23日10時37分(24時間制)には48日、13時間、23分の時間がありますが、私の時計は46日、12時間、23分です。javascriptで特定の日付に日、時、分をカウントする

非常にシンプルなはずですが、2日と1時間が欠落している場所を特定できません。

私はこのJavaScriptを持っている:

// Grab the current date 
    var currentDate = new Date(); 

// Set the date to May 8 
    var futureDate = new Date(2016, 04, 08, 23, 59, 59); 

// Calculate the difference in seconds between the future and current date 
    var diff = futureDate.getTime()/1000 - currentDate.getTime()/1000; 

    var clock = new FlipClock($('.clock'), diff, { 
     clockFace: 'DailyCounter', 
     countdown: true, 
     showSeconds: false, 
     language: 'da' 
    }); 
+0

思い出してくれる... :( – unicorn2

+0

クロックは、あなたが持って終了日まで(あなたの現在のタイムゾーンに応じて)46日と変更があります、正しいです。[here](http://www.timeanddate.com/date/durationresult.html?d1=23&m1=3&y1=2016&d2=8&m2=5&y2=2016&h1=10&i1=37&s1=0&h2=23&i2=59&s2=59)を参照してください。正確な差はどこから来たのか分かりません。 –

+0

@RoryMcCrossan - ありがとう...私たちは手動で再集計を行いました。時計は正しく表示されています。カウンターは、しかし、彼らは今日の日付を数えている必要があります真夜中から5月9日までです。 まだ1時間足りませんが、それはDSTと関係があります。 –

答えて

0

私は時代に何かをする必要がある場合、私は通常momentjsを使用し、それはあなたがする必要があるという意味ではありませんが、私はそれが動作します知っている、それは私のために正常に十分に動作します基準。

持続時間の形式はモーメントjsの一部ではなく、機能です。あなたは自分自身を転がすことができますが、John Madhavan-Reeseはすでにdone thisです。 00時スタートのjavascriptヶ月

var futureDate = moment(new Date(2016, 04, 08, 23, 59, 59)); 
 

 
setInterval(function() { 
 
    var ms = moment().diff(moment(futureDate)); 
 
    var duration = moment.duration(ms).format("yy-MM-dd hh:mm:ss"); 
 
    $("#time").text(duration); 
 
}, 200);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script> 
 
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.12.0/moment.min.js"></script> 
 
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment-duration-format/1.3.0/moment-duration-format.min.js"></script> 
 

 
<span id="time"><span>

関連する問題