FOR Schleife bei einem durchlauf abbrrechen
jägermeister
- javascript
Hallo Liebe Forennutzer,
ganz kurz:
Habe diesen Code:
function fotowechsel()
{
for (i=1;i<=5;i++)
{
document.getElementById("grafik").src = "fotos/"+i+".jpg";
if (i==3) break;
}
}
In dem Ordner fotos sind 5 Bilder, also 1.jpg 2.jpg 3.jpg usw.
Habe ein Link. Wenn ich drauf klicke wird die funktion von oben ausgeführt. Allerdings führt der befehl den ganzen code aus, also bis i=5. Wie kann ich es bewerkstelligen, dass er bei i=2 einen break macht und dann bei beim klick wieder i++ macht?
Viele Grüße
jägermeister.
Hi,
Habe ein Link. Wenn ich drauf klicke wird die funktion von oben ausgeführt. Allerdings führt der befehl den ganzen code aus, also bis i=5.
Die break-Anweisung "funzt" also nicht?
Wie kann ich es bewerkstelligen, dass er bei i=2 einen break macht und dann bei beim klick wieder i++ macht?
Logischer Weise nicht mit einer for-Schleife, die immer wieder bei 1 loslaueft.
Du muesstest zumindest den Wert von i ueber die Laufzeit der Schleife hinaus erhalten, also bspw. eine globale Variable nutzen, oder es als "statische" Eigenschaft der Funktion ablegen:
function xy() = { ... }
xy.i = 1;
MfG ChrisB
habe es gerade ausprobiert, klappt aber auch nicht.
was meinst du denn mit "statische" Eigenschaft?
gruß
jägermeister
gruss jägermeister,
Habe diesen Code:
...
In dem Ordner fotos sind 5 Bilder, also 1.jpg 2.jpg 3.jpg usw.
...
Allerdings führt der befehl den ganzen code aus, also bis i=5.
...
der fehler muss woanders liegen, denn Dein geposteter code bringt
in der ausfuehrung die von ihm erwarteten ergebnisse - bitte *copy
und paste* in die jconsole:
function fotowechsel () {
for (i=1;i<=5;i++) {
//document.getElementById("grafik").src = "fotos/"+i+".jpg";
print("fotos/"+i+".jpg");
if (i==3) break;
}
}
print("\nfotowechsel();\n");
fotowechsel();
print("\nfotowechsel();\n");
fotowechsel();
print("\nfotowechsel();\n");
fotowechsel();
so long - peterS. - pseliger@gmx.net