OyvindN Skrevet 10. mars 2009 Skrevet 10. mars 2009 JAVASCRIPT function b(){ wait(2000); document.getElementById("knapp").value="hihi"; wait(2000); document.getElementById("knapp").value="haha"; } HTML <input type="button" id="knapp" value="hallo" onclick=b()> "hihi"-verdien vises ikke her. Den venter 4 sek på å vise "haha". Hvordan skrive det annerledes?
JohndoeMAKT Skrevet 10. mars 2009 Skrevet 10. mars 2009 (endret) <html> <head> <script type="text/javascript"> function noe() { setTimeout( function() { document.getElementById( 'knapp' ).value = 'hihi'; }, 2000 ); setTimeout( function() { document.getElementById( 'knapp' ).value = 'fisk'; }, 4000 ); } </script> </head> <body> <input type="button" id="knapp" value="hallo" onclick="noe();"> </body> </html> Her er dagens tips: Alltid gjør webutvikling i Firefox med Firebug extension. Alt annet er bortkastet tid. Endret 10. mars 2009 av JohndoeMAKT
OyvindN Skrevet 10. mars 2009 Forfatter Skrevet 10. mars 2009 Takker, setTimeout funket . Har firefug på, men ingen feil dukket opp.
JohndoeMAKT Skrevet 10. mars 2009 Skrevet 10. mars 2009 Ok. Jeg regnet med at "wait" var en gammel IE-feature siden jeg ikke fant den i oppslagsverket jeg har her i nettleseren.
OyvindN Skrevet 10. mars 2009 Forfatter Skrevet 10. mars 2009 function wait(msecs){ var start = new Date().getTime(); var cur = start while(cur - start < msecs){ cur = new Date().getTime(); } } Kom på at jeg glemte å ta med denne gitt. Ok. Jeg regnet med at "wait" var en gammel IE-feature siden jeg ikke fant den i oppslagsverket jeg har her i nettleseren.
JohndoeMAKT Skrevet 10. mars 2009 Skrevet 10. mars 2009 Til det har jeg bare NEI å si. For det første vil IE avbryte scriptet etter 100 000 funksjonskall (eller noe slikt) og FF/Opera avbryte scriptet etter så og så mange sekunder og for det andre blir alt Javascript utført i én tråd som gjør at mens den saken kjøres vil alle andre script på siden ha vanskeligheter med å få CPU-tid. setTimeout fortsetter tråden med én gang og setter opp en asynkront kall til funksjonen du gir med som parameter.
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå