Avatar billede starleicht Nybegynder
08. juli 2002 - 09:27 Der er 5 kommentarer og
1 løsning

læg timer/min/sek sammen

Flg. script lægger 2 tider sammen, men kun timer og minuter. Jeg skal have sekunder med i udregningen.
(Og det må gerne kombineres med en form og en submit knap)

<SCRIPT LANGUAGE="JavaScript"><!--
var t1 = '08:30', t2 = '08:45';
var m = (t1.substring(0,t1.indexOf(':'))-0) * 60 +
        (t1.substring(t1.indexOf(':')+1,t1.length)-0) +
        (t2.substring(0,t2.indexOf(':'))-0) * 60 +
        (t2.substring(t2.indexOf(':')+1,t2.length)-0);
var h = Math.floor(m / 60);
document.write(h + ':' + (m - (h * 60)));
//--></SCRIPT>
Avatar billede jakoba Nybegynder
08. juli 2002 - 09:58 #1
<SCRIPT LANGUAGE="JavaScript"><!--
var t1 = '08:30:45';
var t2 = '08:45:50';
var m = "";
var tmp, carry = 0;
for (var i=6; i>=0; m-=3 ) {
    tmp = carry +1*t1.substr(i,2) +1*t2.substr(i,2);
    carry = (tmp>=60) ? 1 : 0 ;
    tmp = "0" +tmp +":";
    m = tmp.substr(tmp.length-3) + m;
}
document.write( m.substrint(0,8) );
//--></SCRIPT>

mvh JakobA
Avatar billede starleicht Nybegynder
08. juli 2002 - 10:32 #2
Hej JakobA

Jeg får fejl, når jeg forsøger at køre scriptet.

FEJLMEDDELELSE: "Et script på denne medfører, at Internet Explorer kører langsomt. Hvis scriptet fortsætter, vil computeren måske ikke reagere på input.
Vil du afbryde scriptet?"

Hvis man vælger "ja" komme samme fejlmeddelelse efter et stykke tid, hvis man vælger "Nej" får man en fejl, og browseren lukker ned.

MVH StarLeicht
Avatar billede jakoba Nybegynder
08. juli 2002 - 10:38 #3
Ups. ja, jag har lavet dig en uendelig løkke med den for-sætning. der burde stå:
for (var i=6; i>=0; i-=3 ) {    // i gøres 3 mindre hver gang.

der er også en stavefejl i sidste linie:  substring -> substring
document.write( m.substring(0,8) );
Avatar billede starleicht Nybegynder
08. juli 2002 - 10:48 #4
Minutter og sekunder er forkert.

Resultatet bilver: 17:76:95!!!!!!!!!
Avatar billede ras2000 Nybegynder
08. juli 2002 - 15:37 #5
<HTML>
<head>
<script type="text/javascript">
function tidplusser(){
    var t1 = '08:30:45';
    var t2 = '08:45:50';
    tid1 = sek(t1);
    tid2 = sek(t2);
    tid = tid1 + tid2;
    strtidtim = Math.floor(tid/3600);
    strtidmin = Math.floor((tid % 3600)/60);
    strtidsek = (tid % 60);
    alert(strtidtim + ":" + strtidmin + ":" + strtidsek);
}
function sek(str){
    tiden = str.slice(0, 2) * 60 * 60;
    tiden += str.slice(3, 5) * 60;
    tiden += str.slice(6, 8) * 1;
    return tiden;
}

</script>
</head>
<body onload="tidplusser()">

</body>
</html>
Kan klare det. Lidt omstændeligt, men så har du alle delene.
Avatar billede ras2000 Nybegynder
08. juli 2002 - 15:39 #6
Denne her fylder nullet ind, hvis en af tallene er mindre end 10:
<HTML>
<head>
<script type="text/javascript">
function tidplusser(){
    var t1 = '08:30:45';
    var t2 = '08:45:50';
    tid1 = sek(t1);
    tid2 = sek(t2);
    tid = tid1 + tid2;
    strtidtim = Math.floor(tid/3600);
    strtidmin = Math.floor((tid % 3600)/60);
    strtidsek = (tid % 60);
    if (strtidtim < 10) strtidtim = "0" + strtidtim;
    if (strtidmin < 10) strtidmin = "0" + strtidmin;
    if (strtidsek < 10) strtidsek = "0" + strtidsek;
    alert(strtidtim + ":" + strtidmin + ":" + strtidsek);
}
function sek(str){
    tiden = str.slice(0, 2) * 60 * 60;
    tiden += str.slice(3, 5) * 60;
    tiden += str.slice(6, 8) * 1;
    return tiden;
}

</script>
</head>
<body onload="tidplusser()">

</body>
</html>
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