/ Forside / Teknologi / Udvikling / Java Scripts / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Java Scripts
#NavnPoint
molokyle 5410
Klaudi 2799
smorch 2439
kim 1360
Harlekin 1134
bentjuul 984
gibson 800
severino 695
Random 675
10  konsulent.. 626
Ustabilt javascript
Fra : Jacob Læssøe Nielsen


Dato : 18-04-04 22:21

Jeg har følgende javascript som virker ret ustabilt - håber nogen kan hjælpe
mig til at få det til at køre.

Det er en tæller som en gang i mellem "forsvinder" for at komme igen et
eller to sekunder efter - det er typisk når tælleren er nået omkring 675
m/sekunder og 1350 m/sekunder osv. Jeg har placeret det i en form (på den
oprindelige side), men hvis man submitter mens tælleren "er forsvundet"
submitter man blankt.

Se her problemet her: http://www.cd-auktion.dk/Timer.asp

Dette er scriptet:

<html>
<head>
<title>Timer</title>

<script>
startday = new Date();
clockStart = startday.getTime();
function initStopwatch()
{
var myTime = new Date();
var timeNow = myTime.getTime();
var timeDiff = timeNow - clockStart;
this.diffSecs = timeDiff/100;
return(this.diffSecs);
}
function getSecs()
{
var mySecs = initStopwatch();
var mySecs1 = ""+mySecs;
mySecs1= mySecs1.substring(0,mySecs1.indexOf(".")) + "";
document.forms[0].timespent.value = mySecs1
window.setTimeout('getSecs()',100);
}
</script>

</head>

<body onLoad="window.setTimeout('getSecs()',1)">

<center><h2>M-Sekuner</h2></center>

<hr align="CENTER" size="2">

<center><form>
Starter når siden indlæses:
<input size=9 name=timespent>
</form></center>

<hr align="CENTER" size="2">

<script language="JavaScript">

</body>
</html>


---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.656 / Virus Database: 421 - Release Date: 09-04-2004



 
 
Lasse Reichstein Nie~ (18-04-2004)
Kommentar
Fra : Lasse Reichstein Nie~


Dato : 18-04-04 23:52

"Jacob Læssøe Nielsen" <cobbe@webspeed.dk> writes:

> Jeg har følgende javascript som virker ret ustabilt - håber nogen kan hjælpe
> mig til at få det til at køre.
>
> Det er en tæller som en gang i mellem "forsvinder" for at komme igen et
> eller to sekunder efter - det er typisk når tælleren er nået omkring 675
> m/sekunder og 1350 m/sekunder osv. Jeg har placeret det i en form (på den
> oprindelige side), men hvis man submitter mens tælleren "er forsvundet"
> submitter man blankt.

Mit gæt er på linjen:

> mySecs1= mySecs1.substring(0,mySecs1.indexOf(".")) + "";

Hvad sker der hvis mySecs1 er et tal uden decimaler?
Så bliver mySecs1.indexOf(".") til -1, og substring(0,-1) giver en
tom streng.

Det er også en omstændig måde at afrunde på!
Prøv den her:
---
<script type="text/javascript> // type-attributten er påkrævet!
var clockstart = new Date().getTime();
function initStopwatch() {
var timeNow = new Date().getTime();
// hvis du bruger den globle variabel diffSecs
diffSecs = Math.round((timeNow - clockStat)/100);
return diffSecs;
}
function getSecs() {
var mySecs = initStopwatch();
document.forms[0].elements['timespent'].value = mySecs;
setTimeout(getSecs,100);
}
</script>
---

/L
--
Lasse Reichstein Nielsen - lrn@hotpop.com
DHTML Death Colors: <URL:http://www.infimum.dk/HTML/rasterTriangleDOM.html>
'Faith without judgement merely degrades the spirit divine.'

Jacob .. (19-04-2004)
Kommentar
Fra : Jacob ..


Dato : 19-04-04 12:59

> Mit gæt er på linjen:
>
> > mySecs1= mySecs1.substring(0,mySecs1.indexOf(".")) + "";
>
> Hvad sker der hvis mySecs1 er et tal uden decimaler?
> Så bliver mySecs1.indexOf(".") til -1, og substring(0,-1) giver en
> tom streng.

Jeg vil ikke lægge skjul på, at jeg ikke kender det helt store til javascript, så
det var en anelse sort for mig at gennemskue.

> Prøv den her:
> ---
> <script type="text/javascript> // type-attributten er påkrævet!
> var clockstart = new Date().getTime();
> function initStopwatch() {
> var timeNow = new Date().getTime();
> // hvis du bruger den globle variabel diffSecs
> diffSecs = Math.round((timeNow - clockStat)/100);
> return diffSecs;
> }
> function getSecs() {
> var mySecs = initStopwatch();
> document.forms[0].elements['timespent'].value = mySecs;
> setTimeout(getSecs,100);
> }
> </script>
> ---

Nu har jeg forsøgt at sætte det ind men giver mig en blank side. Hvad er galt?

Her er som den ser ud nu:

<html>
<head>
<title>Timer</title>

<script type="text/javascript> // type-attributten er påkrævet!
var clockstart = new Date().getTime();
function initStopwatch() {
var timeNow = new Date().getTime();
// hvis du bruger den globle variabel diffSecs
diffSecs = Math.round((timeNow - clockStat)/100);
return diffSecs;
}
function getSecs() {
var mySecs = initStopwatch();
document.forms[0].elements['timespent'].value = mySecs;
setTimeout(getSecs,100);
}
</script>

</head>

<body onLoad="window.setTimeout('getSecs()',1)">

<form>
Starter når siden indlæses:
<input size=9 name=timespent>
</form>
<script language="JavaScript">

</body>
</html>


--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Jonas Schmeltz Aaber~ (19-04-2004)
Kommentar
Fra : Jonas Schmeltz Aaber~


Dato : 19-04-04 14:38


> Her er som den ser ud nu:
>
> <html>
> <head>
> <title>Timer</title>
>
> <script type="text/javascript> // type-attributten er påkrævet!
> var clockstart = new Date().getTime();
> function initStopwatch() {
> var timeNow = new Date().getTime();
> // hvis du bruger den globle variabel diffSecs
> diffSecs = Math.round((timeNow - clockStat)/100);
> return diffSecs;
> }
> function getSecs() {
> var mySecs = initStopwatch();
> document.forms[0].elements['timespent'].value = mySecs;
> setTimeout(getSecs,100);
> }
> </script>
>
> </head>
>
> <body onLoad="window.setTimeout('getSecs()',1)">
>
> <form>
> Starter når siden indlæses:
> <input size=9 name=timespent>
> </form>
> <script language="JavaScript">
>
> </body>
> </html>

Hvad laver det sidste script-element dér?!!!
Få det væk! Så tror jeg helt bestemt, det vil se anderledes ud!


MVH Jonas (aka Juke)

--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Jacob .. (19-04-2004)
Kommentar
Fra : Jacob ..


Dato : 19-04-04 15:44

> Hvad laver det sidste script-element dér?!!!
> Få det væk! Så tror jeg helt bestemt, det vil se anderledes ud!

Nej det gjorde det ikke rigtigt. Hmmm, ellers andet det kunne være?

--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Jacob Læssøe Nielsen (19-04-2004)
Kommentar
Fra : Jacob Læssøe Nielsen


Dato : 19-04-04 21:40

> Hvad laver det sidste script-element dér?!!!
> Få det væk! Så tror jeg helt bestemt, det vil se anderledes ud!

OK - jeg ved ikke hvad jeg gjorde men nu virker det. 1000 tak for særdeles
gode input og løsninger

VH Jacob


---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.656 / Virus Database: 421 - Release Date: 09-04-2004



Lasse Reichstein Nie~ (19-04-2004)
Kommentar
Fra : Lasse Reichstein Nie~


Dato : 19-04-04 21:54

Jacob .. <laessoe@yahoo.com> writes:

>> Prøv den her:

> Nu har jeg forsøgt at sætte det ind men giver mig en blank side. Hvad er galt?
>

To tyrkfejl (pinligt!):

> Her er som den ser ud nu:
>
> <html>
> <head>
> <title>Timer</title>
>
> <script type="text/javascript> // type-attributten er påkrævet!
Trykfejl 1: ^ mangler " her!

> var clockstart = new Date().getTime();
> function initStopwatch() {
> var timeNow = new Date().getTime();
> // hvis du bruger den globle variabel diffSecs
> diffSecs = Math.round((timeNow - clockStat)/100);
Trykfejl 2: clockstart <- ret til
> return diffSecs;

> <body onLoad="window.setTimeout('getSecs()',1)">

Den kan forsimples til
<body onload="getSecs()">

> <script language="JavaScript">

Og den linje er til overs, og skal bare fjernes.

/L
--
Lasse Reichstein Nielsen - lrn@hotpop.com
DHTML Death Colors: <URL:http://www.infimum.dk/HTML/rasterTriangleDOM.html>
'Faith without judgement merely degrades the spirit divine.'

Jacob Læssøe Nielsen (20-04-2004)
Kommentar
Fra : Jacob Læssøe Nielsen


Dato : 20-04-04 22:55

> To tyrkfejl (pinligt!):

Det virker - tak for hjælpen.


---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.656 / Virus Database: 421 - Release Date: 09-04-2004



Søg
Reklame
Statistik
Spørgsmål : 177501
Tips : 31968
Nyheder : 719565
Indlæg : 6408522
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste