WCM Forum

WCM Forum (http://www.wcm.at/forum/index.php)
-   Programmierung (http://www.wcm.at/forum/forumdisplay.php?f=17)
-   -   Prefetch in JavaScript (http://www.wcm.at/forum/showthread.php?t=31825)

nbauer 30.09.2001 18:34

Prefetch in JavaScript
 
Ich möchte Bilder in einer Art Diashow anzeigen und nach dem Laden der Seite die weiteren Bilder jeweils herunterladen, während die Seite zur Betrachtung nicht verändert wird.

Das Problem besteht darin, dass der Prefetch angestossen wird und die Funktion weiterläuft, da der Prefetch in einem eigenen Prozess abgewickelt wird. Dadurch fehlt mir die Kontrolle, ob das nächste Bild schon geladen ist und es daher auch angezeigt werden kann.

Der Code fürs Nachladen:

for (i=0;i<bildArr.length;i++)
{
path1=......
bildArr[i].bild.src=path1;
load=i
}

path1 erhält den Pfadnamen und den Namen des Bildes. Ohne das Laden des Bildes abzuwarten, wird die nächste Zeile "load=i" durchlaufen. Damit fehlt die Info, welches Bild schon tatsächlich geladen wurde.

Weiss jemand eine Lösung? Ich habe es in Internet Explorer 5.5, Netscape 4.7 und 6.1 ausprobiert.

Ciao
nbauer
bildArr.length ent

Sesa_Mina 30.09.2001 18:51

Da gibts die OnLoad funktion die du im BODY tag einsetzen kannst.

Diese wird aufgerufen sobald ALLE Daten geladen wurden.

Vielleicht kannst über das die links zum weiterschalten aktivieren?

nbauer 30.09.2001 19:18

Die Funktion wird im BODY von ONLOAD aufgerufen.

Ciao
nbauer

snowman 30.09.2001 19:47

probiers mal so (beispiel für 10 bilder)

<SCRIPT LANGUAGE="JavaScript"><!--
function next() { if (++no < 10) load(); }

function load() {
img[no] = new Image();
img[no].onload = next;
img[no].src = 'image' + no + '.jpg';
}

if (document.images) {
var img = new Array(10), no = 1;
load();
}
//--></SCRIPT>

gruss,
snowman

nbauer 07.10.2001 12:50

Die onload-Funktion ist nur beim body und bei frameset vorgesehen. Sie geht nicht bei images.

Ciao
nbauer


Alle Zeitangaben in WEZ +2. Es ist jetzt 18:24 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
© 2009 FSL Verlag