-3

Ich benutze eine API, die die Zeit wie diese deal_expiration_time:1469396377 zurückgibt, die wie seine Sekunden von 1970 aussieht. Ich versuche, einen Countdown in MM/SS zu bekommen anscheinend kann jQuery nicht verwenden? Ich habe für eine Weile gekämpft und bin mit diesem Code ratlos. Ich versuche es seine input: 1469396377 | output: 08:21Zähle Sekunden von 1970 Zeit in Javascript

function(){ 
    var x1, secs1 = 510; 
    x1 = setInterval(function(){myFunc1(9)}, 1000); 

    function myFunc1(timerId){ 
    var minutes = Math.floor(secs1/60); 
    var seconds = secs1 % 60; 
    $('#timer_'+timerId).html(minutes + ':' + seconds); //assuming there is a label with Id 'timer' 

    secs1--; 
    if(secs1 == 0){ 
     document.getElementById('timer_' + timerId).style.hidden = true; 
     clearInterval(x1); 
    } 
    } 
} 
+2

Dies ist Unix-Zeit oder Epoche Zeit. Sie können 'Date.now()' oder '+ new Date' verwenden, um es wie auf [diese ähnliche Frage] vorgeschlagen zu bekommen (http://stackoverflow.com/questions/221294/how-do-you-geta-a- Zeitstempel in Javascript). Möglicherweise müssen Sie die Millisekunden abschneiden. – Havenard

+0

* "Dies ist in eckigen, so dass ich anscheinend nicht jQuery verwenden kann?" * - Ich sehe nicht, warum Sie sie nicht zusammen verwenden können, aber in jedem Fall ist jQuery keine Datum/Zeit-Bibliothek, also ich Ich weiß nicht, warum Sie es hier verwenden möchten ... – nnnnnn

+0

Gibt es mehr Code, den Sie bereitstellen können? Ich sehe in Ihrem Beispiel nichts speziell für Angular. So oder so, überprüfen Sie http://stackoverflow.com/questions/12050268/angularjs-make-a-simple-countdown – Ash

Antwort

0

so machen Sie die aktuelle Zeit Date.now() mit bekommen und dann manuell die Zeitdifferenz zu berechnen. Diese Funktion ermittelt die Differenz zwischen der angegebenen Uhrzeit und der aktuellen Uhrzeit und berechnet die Differenz in Sekunden und Minuten. Dieser Unterschied wird dann als Countdown-String formatiert und dann zurückgegeben.

function getTimeDifference(expirationTime) { 
    var now = Date.now(); 
    var diff = expirationTime - now; 
    var secDiff = Math.round(diff/1000); 
    var minDiff = Math.round(secDiff/60); 
    var diffStr = minDiff + ":" + (secDiff - minDiff * 60); 
    return diffStr 
}