NEWS
Count Up Script Ausgabe in Tagen
-
Hallo Zusammen,
ich bin schon eine ganze weile am basteln mit IoBroker, seit ich von DashUI umgestiegen bin. Soweit klappt auch alles was ich mir vorgestellt habe. Bis auf zwei Dinge bei denen ich nicht weiter komme.
Ziel ist die Ausgabe der Anzahl der Tage seit einem bestimmten Ereigniss in der Vergangenheit. Nachdem ich mich mit JS nicht wirklich auskenne, habe ich mich durch das Netz gewühlt und sogar etwas gefunden und ein bisschen angepasst. Nur leider habe ich keine Ahnung wie ich das Skript jetzt dazu bekomme die Anzahl der Tage in eine variable zu schreiben. Ganz zu schweigen davon, dass ganze nur in Tage ausgeben zu lassen und nicht in Jahre, Monate, Tage. Kann mir von euch jemand helfen?
var jahr=2015, monat=12, tag=9; // Start-Datum in MEZ function countup() { var startDatum=new Date(jahr,monat-1,tag); zielDatum=new Date(); // Aktuelles Datum // Countup erst berechnen und anzeigen, wenn Start-Datum überschritten wird if(startDatum<zieldatum) {/var/jahre="0," monate="0," tage="0," while(startdatum<zieldatum)/jahre++;/startdatum.setfullyear(startdatum.getfullyear()+1);/}/startdatum.setfullyear(startdatum.getfullyear()-1);/jahre--;/monate++;/startdatum.setmonth(startdatum.getmonth()+1);/startdatum.setmonth(startdatum.getmonth()-1);/monate--;/while(startdatum.gettime()+(24*60*60*1000)<zieldatum)/tage++;/startdatum.settime(startdatum.gettime()+(24*60*60*1000));/anzeige/formatieren/(jahre!="1)?jahre=jahre+"" jahre,/":jahre="jahre+"" jahr,/";/(monate!="1)?monate=monate+"" monate,/":monate="monate+"" monat,/(tage!="1)?tage=tage+"" tage,/":tage="tage+"" tag,/document.countupform.countupinput.value="jahre+monate+tage;" anderenfalls/alles/auf/null/setzen/else/;/settimeout('countup()',200);/}<e=""></zieldatum)>
-
Die Lösung war doch viel einfacher als gedacht…..
var then = new Date(2015, 11, 10, 00, 00, 00), // month is zero based now = new Date; // no arguments -> current date days = "daysincebirth" // 24 hours, 60 minutes, 60 seconds,1000 milliseconds setState (days, Math.round((now - then) / (1000 * 60 * 60 * 24)))
und es funktioniert….