webForumDet fria alternativet

problem med kod som kollar om bilder är laddade

0 svar · 187 visningar · startad av herq

herqMedlem sedan aug. 2000238 inlägg
#1

jag har snickrat ihop följande funktion som används som ett image preload script.
jag anropar funktionen enl följande: preload_images('bild1.jpg', 'bild2.jpg', 'bild3.jpg'),
(behöver ej vara exakt tre argument, kan va fler eller färre. oftast fler, ca 5).

funktionen består av två delar, första delen laddar in bilderna, andra delen kollar om bilderna är färdigladdade.

första delen funkar utmärkt (i firefox, inte ie).
andra delen funkar inte (som jag vill) varken i firefox eller ie.
funktionen all_images_have_been_loaded_completely() anropas fastän inte alls alla bilder hunnit ladda klart helt o hållet.

VARFÖR? vad är fel? HJÄLP MIG!

effektivisera gärna koden om ni kommer på ngt smart.

function preload_images () {
	// del 1
	var myimages=new Array()
	for (i = 0; i < preload_images.arguments.length; i++){
		myimages[i]=new Image()
		myimages[i].src=preload_images.arguments[i];
	}

	// del 2
	n = 0;
	while (n < myimages.length) {
		imgid = document.images[n].id;
		if (document.getElementById(imgid).complete) // FELET? den tror att detta är true, fast det fortfarande är false.
			n++;
		if (n == myimages.length)
			all_images_have_been_loaded_completely();
	}
}
129 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
127 ms — hämta tråd, inlägg och bilagor (db)