Nabend Ihrz,
ich habe ein bereits bestehendes Script zum Bilder vorladen schlanker gemacht, weniger bug-anfällig und überhaupt. Im Grunde funktioniert es auch mittlerweile (im Schweisse meines Angesichts ... echt nicht mein Gebiet) fast perfekt. Dieses "fast" spiegelt sich aber in all meinen drei getesteten Browsern anders wieder.
Den Code werd ich Euch unten posten, einen Link habe ich auch zu der Aktion. Erst zu den Wundersamkeiten...
Explorer 5:
Es funktioniert im Grunde, nur lädt er manchmal nur bis kurz vorm Ende und schaltet dann logischerweise auch nicht um zur Zielseite. Reload lässt ihn das Ganze von vorne anfangen, und dann lädt er auch zu Ende, springt um blabla wie sichs halt gehört.
Wie kann ich ihn dazu zwingen, wirklich fertig zu laden?
Hab in nem Buch mal was von onabort und onerror gelesen, hab ich auch eingebaut, wurde aber völlig ignoriert.
Netscape 4.5
Der lädt sogar fertig, leitet brav weiter, und dann, auf der Zielseite, fängt er an nochmal alles von vorne zu laden. Als hätte ich die Vorleidenseite niemals gebaut.
Wie geht das denn? Bzw. was kann ich dagegen tun?
Netscape 6
Hm, er scheint tatsächlich normal zu laden. Am eingebauten Ladebalken kann man das nicht erkennen. Die 1x1 Pixel Bilder sprechen aber dafür. Bin mir nicht wirklich sicher, ob er hier alle Bilder komplett vorlädt. Die Weiterleitung versagt hier dann. Auf der per Hand eingegebenen Zielseite verhält er sich dann, als wäre alles komplett geladen.
Es können ja (hoffentlich) nur Kleinigkeiten sein. Ich hoffe es fällt Euch da was auf und Ihr könnt mir da helfen.
Dafür, dass Ihrs besser wisst als ich, danke ich Euch schon jetzt ;-)
Robin
IM HEAD
<script language="JavaScript"><!--
var pics=new Array()
pics[0]="../images/picshow/start.gif"
pics[1]="../images/picshow/pic01-0.jpg"
pics[2]="../images/picshow/pic01-1.jpg"
pics[3]="../images/picshow/pic01-2.jpg"
pics[4]="../images/picshow/pic02-0.jpg"
pics[5]="../images/picshow/pic02-1.jpg"
pics[6]="../images/picshow/pic02-2.jpg"
pics[7]="../images/picshow/pic03-0.jpg"
pics[8]="../images/picshow/pic03-1.jpg"
pics[9]="../images/picshow/pic03-2.jpg"
pics[10]="../images/picshow/pic04-0.jpg"
pics[11]="../images/picshow/pic04-1.jpg"
pics[12]="../images/picshow/pic04-2.jpg"
pics[13]="../images/picshow/pic05-0.jpg"
pics[14]="../images/picshow/pic05-1.jpg"
pics[15]="../images/picshow/pic05-2.jpg"
pics[16]="../images/picshow/pic06-0.jpg"
pics[17]="../images/picshow/pic06-1.jpg"
pics[18]="../images/picshow/pic06-2.jpg"
pics[19]="../images/picshow/pic07-0.jpg"
pics[20]="../images/picshow/pic07-1.jpg"
pics[21]="../images/picshow/pic07-2.jpg"
pics[22]="../images/picshow/pic08-0.jpg"
pics[23]="../images/picshow/pic08-1.jpg"
pics[24]="../images/picshow/pic08-2.jpg"
pics[25]="../images/picshow/pic09-0.jpg"
pics[26]="../images/picshow/pic09-1.jpg"
pics[27]="../images/picshow/pic09-2.jpg"
pics[28]="../images/picshow/pic10-0.jpg"
pics[29]="../images/picshow/pic10-1.jpg"
pics[30]="../images/picshow/pic10-2.jpg"
pics[31]="../images/picshow/pic11-0.jpg"
pics[32]="../images/picshow/pic11-1.jpg"
pics[33]="../images/picshow/pic11-2.jpg"
pics[34]="../images/picshow/pic12-0.jpg"
pics[35]="../images/picshow/pic12-1.jpg"
pics[36]="../images/picshow/pic12-2.jpg"
function preloader()
{
for (g=0; g<pics.length; g++)
eval('document.preload'+g+'.src="'+pics[g]+'";');
}
var loaded=new Array()
for (h=0; h<pics.length; h++)
loaded[h]=0;
num_loaded = 0;
function update(num)
{
loaded[num]++;
if (loaded[num] == 2)
{
eval('document.status'+num_loaded+'.src="../images/picshow/loaded.gif";');
num_loaded++;
if (num_loaded == pics.length)
top.location.href="pics.html";
}
}
//--></script>
IM BODY
<body onload="preloader()">
<table border="0" cellpadding="0" cellspacing="0" height="48%" align="center">
<tr>
<td align="center" valign="bottom">
<p>Die Picshow wird geladen.<br>
Dauert ja nicht lange...</p>
<p><b>Status:</b></p>
</td>
</tr>
</table>
<script language="JavaScript"><!--
document.write('<p align="center">');
for (i=0; i<pics.length; i++)
document.write('<img src="../images/picshow/loading.gif" width="3" height="10" name="status'+i+'">');
document.write('<br>');
for (j=0; j<pics.length; j++)
document.write('<img src="../images/space.gif" width="1" height="1" border="0" onload="update('+j+')" name="preload'+j+'">');
document.write('</p>');
//--></script>
</body>
Dass Du nicht paranoid bist, heisst nicht, dass sie auch nicht hinter Dir her sind...