7

ミリ秒を時間-分-秒に出力する簡単な方法を探しています。いくつかのプラグインを見たことがありますが、プラグインでプラグインを使用したくありません。カウントダウンスニペットをたくさん見ましたが、これらは日付を使用しています。日付ではなくミリ秒を使用しています。

ありがとう。

編集:xxxxミリ秒からゼロまでカウントバックするスクリプトを探しています

//今まで私はこれを持っています

    diff  = 100000000;

    function showTimer() {

        hours = Math.floor( diff / (1000*60*60) );
        mins  = Math.floor( diff / (1000*60) );
        secs  = Math.floor( diff / 1000 );

        $('.count').html(hours+ 'hours' +minutes + 'minutes' +seconds + ' seconds');
    }

    setInterval(function(){showTimer()}, 1000 );
4

3 に答える 3

13

簡単な数学。

1000 ミリ秒 = 1 秒。

60 秒 = 1 分。

60 分 = 1 時間。

したがって、123456789 ミリ秒がある場合は、次のようにします。

123456789 / 1000 (秒単位) つまり 123456.789

123456.789 / 60 (分) = 2,057.6

2,057.6 / 60 (時間) つまり 34.29 時間です。

次に、残り (.2935525) を使用して、これを分に変換します。つまり、17.61315 です。

残りをもう一度使用して (.61315)、秒に変えます...これは 36.789 です

つまり、123456789 ミリ秒は 34 時間 17 分 37 秒に相当します。

JavaScript の部分は自分でできると思います。


わかりました、もう少し助けが必要かもしれません。

デモ: http://jsbin.com/ekawam/edit#javascript,html,live

var millis = 123456789;

function displaytimer(){
    //Thank you MaxArt.
    var hours = Math.floor(millis / 36e5),
        mins = Math.floor((millis % 36e5) / 6e4),
        secs = Math.floor((millis % 6e4) / 1000);
        $('.count').html(hours+':'+mins+':'+secs);  
}

setInterval(function(){
    millis -= 1000;
    displaytimer();
}, 1000);

また、さらに読むために-setIntervalはドリフトする可能性があります。したがって、これが 100% 正確であるとは思わないでください。setInterval ドリフトしますか?

于 2012-07-12T23:08:07.760 に答える
3

何を求めているのかよくわかりませんが...

var hours = Math.floor(millis / 36e5),
    mins = Math.floor((millis % 36e5) / 6e4),
    secs = Math.floor((millis % 6e4) / 1000);
于 2012-07-12T23:08:00.053 に答える