/ 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
Preloaded images hentes alligevel fra serv~
Fra : Leif Neland


Dato : 20-09-04 18:28

Jeg vil have et ur på min side:
http://www.neland.dk/clock.html

Men selvom jeg preloader billederne af cifrene med
function InitTime() {
c1 = new Image(); c1.src = "1c.gif";
c2 = new Image(); c2.src = "2c.gif";
etc

(Hvilket jeg kan se i logfilen)

Så når tiden skifter:
document.images.h.src = eval("c"+secondsRound+".src");
så kan jeg se i logfilen og i statuslinien at billedet hentes fra serveren.

Efter et vist stykke tid fungerer nedtællingen ikke, og flaget i IE står
bare og blafrer.

Hvad er der galt?

Leif



 
 
Christian Hansen (20-09-2004)
Kommentar
Fra : Christian Hansen


Dato : 20-09-04 19:45

Leif Neland wrote:
> Jeg vil have et ur på min side:
> http://www.neland.dk/clock.html
>
> Men selvom jeg preloader billederne af cifrene med
> function InitTime() {
> c1 = new Image(); c1.src = "1c.gif";
> c2 = new Image(); c2.src = "2c.gif";
> etc
>

og function InitTime kører kun en gang?

Mvh Christian

Leif Neland (20-09-2004)
Kommentar
Fra : Leif Neland


Dato : 20-09-04 20:46

Christian Hansen wrote:
> Leif Neland wrote:
>> Jeg vil have et ur på min side:
>> http://www.neland.dk/clock.html
>>
>> Men selvom jeg preloader billederne af cifrene med
>> function InitTime() {
>> c1 = new Image(); c1.src = "1c.gif";
>> c2 = new Image(); c2.src = "2c.gif";
>> etc
>>
>
> og function InitTime kører kun en gang?
>
Jep, har checkket med en alert.

Leif



Christian Hansen (20-09-2004)
Kommentar
Fra : Christian Hansen


Dato : 20-09-04 22:04

Leif Neland wrote:

>>og function InitTime kører kun en gang?
>>
>
> Jep, har checkket med en alert.
>
> Leif


I øvrigt bør du anvende setInterval() og ikke setTimeout() til en
løbende funktion. Derved kan du også lave dit script mere elegant.

Se eventuelt dette eksempel, som jeg har lavet en eller anden gang:

http://www.fundanemt.com/scripts/clock.html

Bemærk at jeg vælger at "preloade" billeder i en skjult div i stedet, da
jeg også havde problemer med at få cachen til at fange dem med new
Image() metoden.

Læs mere om setInterval() her :

http://www.devguru.com/Technologies/ecmascript/quickref/win_setInterval.html

Mvh Christian

Leif Neland (20-09-2004)
Kommentar
Fra : Leif Neland


Dato : 20-09-04 22:36

Christian Hansen wrote:
> I øvrigt bør du anvende setInterval() og ikke setTimeout() til en
> løbende funktion. Derved kan du også lave dit script mere elegant.
>
> Se eventuelt dette eksempel, som jeg har lavet en eller anden gang:
>
> http://www.fundanemt.com/scripts/clock.html
>

Det duer ikke.

Jeg kunne se statuslinien hele tiden reloadede med at den hentede d0.

Tcpdump på firewallen afslørede 187 requests i sekundet 23:29:35 til
coronex.pil.dk, som åbenbart hoster fundanemt.com

Så jeg kan nok ses på statistikken i morgen.

Browser: IE 6.0.2900.2180.xpsp_sp2.rtm.040803-2158
XP sp2

Leif



Christian Hansen (21-09-2004)
Kommentar
Fra : Christian Hansen


Dato : 21-09-04 06:48

Leif Neland wrote:
> Christian Hansen wrote:

> Det duer ikke.
>
> Jeg kunne se statuslinien hele tiden reloadede med at den hentede d0.
>

Sært.

jeg testede lige for sjovt på min kærestes computer, som også er en
winxp med ie og sp2. Der fungerede det som det skulle. Er du sikker på
at din browser cacher noget som helst?

Kan man slå cache fra i sådan en? Det tyder i hvert fald på, at der er
et eller andet, som går galt i cachingen på din maskine.

mvh Christian

Leif Neland (21-09-2004)
Kommentar
Fra : Leif Neland


Dato : 21-09-04 17:16

Christian Hansen wrote:
> Leif Neland wrote:
>> Christian Hansen wrote:
>
>> Det duer ikke.
>>
>> Jeg kunne se statuslinien hele tiden reloadede med at den hentede d0.
>>
>
> Sært.
>
> jeg testede lige for sjovt på min kærestes computer, som også er en
> winxp med ie og sp2. Der fungerede det som det skulle. Er du sikker på
> at din browser cacher noget som helst?

Jeg ved ikke, hvad jeg har gjort, men nu fungerer både dit og mit script
uden at billedet skal hentes hver gang fra serveren.

Leif



Lasse Reichstein Nie~ (20-09-2004)
Kommentar
Fra : Lasse Reichstein Nie~


Dato : 20-09-04 21:52

"Leif Neland" <leifn@neland.dk> writes:

> Jeg vil have et ur på min side:
> http://www.neland.dk/clock.html

Ok, hvis du siger det (jeg har et ur på min skærm allerede, og et på
armen, så det er begrænset hvor meget brug jeg vil have for det :)

> Men selvom jeg preloader billederne af cifrene med
> function InitTime() {
> c1 = new Image(); c1.src = "1c.gif";
....
> Så når tiden skifter:
> document.images.h.src = eval("c"+secondsRound+".src");

"eval" er så godt som aldrig nødvendig, og bør undgås. I dette
tilfælde kunne du bare skrive:
document.images.h.src = secondsRound + "c.gif";

Så kan du også lave c0, c1, etc. om til lokale variable, så de ikke
ligger og flyder i det globale navnerum.

> Efter et vist stykke tid fungerer nedtællingen ikke, og flaget i IE står
> bare og blafrer.

Hvor lang tid, ca.? Jeg kan ikke se noget problem endnu (IE 6, WinXP SP2).

/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.'

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

Månedens bedste
Årets bedste
Sidste års bedste