Zufallsscript - Browser ausgelastet
michael
- javascript
Hallo!
Ich habe ein kleines Script um ein zufälliges Bild zu laden:
<script type="text/javascript">
zz = Math.round(Math.random()*10);
while ((zz<1) || (zz>33));
document.write("<img src="http://www.datakitchen.michamo.de/menue/random/headerrandom" + zz + ".gif" width="70" height="64">")
</script>
Das Script läuft eigentlich ohne Probleme, aber ca. bei jedem 100ten Aufruf gibt der Browser (ich verwende Firefox) eine Fehlermeldung, das ein Script den Browser "überfordert". Ich kann dann "weiter" oder "abbrechen" wählen. In beiden Fällen wird die Seite korrekt angezeigt, lediglich das Zufallsbild ist nicht da.
Die Bilder die gewählt werden können sind natürlich alle auf dem Webspace.
Ist das nen Firefoxbug?
Ich bin nicht so der Javascripter, aber für mich sieht das alles korrekt aus ...
Danke für jede Antwort!
Hallo,
deine While-Schleife ist völlig sinnfrei, da leer. Immer wenn zz==0 ist, also durchschnittlich jedes 20te Mal, gerät die While-Schleife in eine Endlosschleife.
Wenn die Zufallszahl kleiner 0.5 ist, wird sie auf 0 abgerundet, Du hast also diesen Fall übersehen. Größer als 33 kann sie auch nicht sein, höchstens 10. Die While-Schleife ist außerdem überflüssig. Versuch es mal mit:
<script type="text/javascript">
zz = Math.floor(Math.random()*10)+1;
document.write("<img src="http://www.datakitchen.michamo.de/menue/random/headerrandom" + zz + ".gif" width="70" height="64">")
</script>
Schöne Grüße
adapter
Hi,
zz = Math.round(Math.random()*(ANZAHL_DER_BILDER-1)) + 1;
document.write("<img src=\"http\://www.datakitchen.michamo.de/menue/random/headerrandom" + zz + ".gif\" width=\"70\" height=\"64\">")
MfG Hopsel
Hi,
Nachtrag:
Setze zz am Anfang auf 1!
MfG Hopsel