Avatar billede kaptajnkemo Nybegynder
04. juli 2003 - 13:00 Der er 6 kommentarer og
1 løsning

udregne tid der er gået af en arbejdsuge

Hej

Jeg skal bruge et script som kan fortælle mig hvor mange procent af en arbejdsuge der er gået på et givent tidspunkt.

jeg forestiller med noget i stil med:

timeNow = new Date;
var arbejdstidGaaet = getTimePassed(timeNow);

Altså at funktionen kan tage en Date som parameter.
Avatar billede roenving Novice
04. juli 2003 - 14:46 #1
Sådan:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">
<HTML>
<HEAD>
<TITLE>Arbejdsuge</TITLE>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<SCRIPT LANGUAGE="javascript" TYPE="text/javascript">
function workWeek(){
    var timeNow = new Date;
    var d = timeNow.getDay();
    var t = timeNow.getHours();
    var m = timeNow.getMinutes();
    var timeToday = ((t-9)*60 + m)*60*1000;
    var workWeekTime = (d-1)*7.5*60*60*1000 + timeToday;
    return (Math.round(workWeekTime/(37.5*3600)))/10;
}
</SCRIPT>
</HEAD>
<BODY>
<BR>
<H1>Arbejdsugen er lang</H1>
Denne beregning er lavet udfra en fast arbejdstid-start kl. 9 og 5 arbejdsdage af 7½ time
<FORM ID="minForm" NAME="minForm">
Du er igennem <SPAN id="minSpan">0 %</span>&nbsp;af arbejdsugen!<BR><BR>
<button name="button2" id="button2" onclick="document.getElementById('minSpan').innerText = workWeek()+' %'">Har jeg Travlt</button>
</FORM>
</BODY>
<HTML>

hth
jes
Avatar billede roenving Novice
04. juli 2003 - 14:54 #2
Og en lidt frækkere en, som du bare kan starte, så fortsætter den selv og hvis du minimerer den står %-satsen i titlen på task-baren ,-)

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">
<HTML>
<HEAD>
<TITLE>Arbejdsuge</TITLE>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<SCRIPT LANGUAGE="javascript" TYPE="text/javascript">
function workWeek(){
    var timeNow = new Date;
    var d = timeNow.getDay();
    var t = timeNow.getHours();
    var m = timeNow.getMinutes();
    var timeToday = ((t-9)*60 + m)*60*1000;
    var workWeekTime = (d-1)*7.5*60*60*1000 + timeToday;
    arbejdstidGaaet = (Math.round(workWeekTime/(37.5*3600)))/10 + ' %';
    document.title = arbejdstidGaaet;
    document.getElementById('minSpan').innerText = arbejdstidGaaet;
}
</SCRIPT>
</HEAD>
<BODY>
<BR>
<H1>Arbejdsugen er lang</H1>
Denne beregning er lavet udfra en fast arbejdstid-start kl. 9 og 5 arbejdsdage af 7½ time
<FORM ID="minForm" NAME="minForm">
Du er igennem <SPAN id="minSpan">0 %</span>&nbsp;af arbejdsugen!<BR><BR>
<button name="button2" id="button2" onclick="workWeek();setInterval('workWeek()',10000);">Har jeg travlt</button>
</FORM>
</BODY>
<HTML>
Avatar billede kaptajnkemo Nybegynder
04. juli 2003 - 15:32 #3
kewl ;)

Glæder mig til at kigge på det, men nu er det weekend.
Prøver det på mandag....
Avatar billede kaptajnkemo Nybegynder
07. juli 2003 - 09:23 #4
Lækkert. Det virker som det skal. Nu skal jeg bare have tilpasset det til mit eget foormål.

Gider du kommentere lidt på beregningen så jeg kan se hvor de forskellige tal kommer fra?
Avatar billede roenving Novice
07. juli 2003 - 10:28 #5
Tsæ'følsomt :-)

function workWeek(){
    var timeNow = new Date;
    var d = timeNow.getDay();//Dag i ugen -- søndag = 0
    var t = timeNow.getHours();//tidspunkt idag
    var m = timeNow.getMinutes();// - " -
    //Træk kl. 9 fra og gang op til millisek. som javascript ellers regner i:
    var timeToday = ((t-9)*60 + m)*60*1000;
    //Da mandag er dag 1 er antal hele arbejdsdage gået= d-1 -- 7.5 arbejdstime pr. dag:
    var workWeekTime = (d-1)*7.5*60*60*1000 + timeToday;
    //Vi har arbejdstiden i millisekunder, dividerer med en hel uge og afrunder så det ser pænt ud:
    arbejdstidGaaet = (Math.round(workWeekTime/(37.5*3600)))/10 + ' %';
    document.title = arbejdstidGaaet;
    document.getElementById('minSpan').innerText = arbejdstidGaaet;
}

Velbekomme '-)
Avatar billede kaptajnkemo Nybegynder
07. juli 2003 - 17:34 #6
Tak for det....

Det endte med den kun skulle gøre det på timebasis, men jeg har brug din løsning som udgangspunkt.
Avatar billede roenving Novice
07. juli 2003 - 21:47 #7
-- og tak for points ;~}
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester