Firefox: Wie kann ich ein Javascript (mit alerts) abbrechen?
klausfpga
- browser
Hi,
Ich hab folgendes kleinen Javascript zweizeiler.
n=5;
for(i=0;i<n;i++) alert("na stoppmichdoch"+i);
Wie kann ich denn Firefox dazu bringen mein Script abzubrechen.
Bei n = 5 kann man ja noch 5 mal klicken, wenn n aber dummerweise etwas groesser waere es manchmal angenehm einfach zu stoppen.
Das Problem, dass ich habe ist, dass Firefox waehrend eine alert box geoeffnet ist nicht erlaubt einen tab oder gar den ganzen browser zu schliessen. ( kann natuerlich einfach nen kill machen, aber top find ich das nicht)
Beim Debuggen ist das etwas laesting, da ich manchmal Dank eines Tippfehlers im Code etwas mehr alerts bekomme als ich will.
Ich bin fuer Anregungen dankbar.
Ich koennte ja meine eigene alertfunktion schreiben, die maximal N_max alerts ausspuckt, dass ist aber nicht genau das was ich will, da das script theoretisch mehrere Stunden laufen kann und alle paar Minuten (unter umstaenden einen alert ausspuckt).
Ich muesste also eher so etwas wie (alerts pro Minute abfragen)
bye
Klaus
Hi,
n=5;
for(i=0;i<n;i++) alert("na stoppmichdoch"+i);
>
> Wie kann ich denn Firefox dazu bringen mein Script abzubrechen.
> Bei n = 5 kann man ja noch 5 mal klicken, wenn n aber dummerweise etwas groesser waere es manchmal angenehm einfach zu stoppen.
Dann nimm doch confirm statt alert - und lasse dessen Rückgabewert mit in die Laufbedingung der Schleife mit einfliessen.
Dann kannst du als Nutzer aktiv aus der Schleife aussteigen, wann immer dir danach ist.
MfG ChrisB
--
Light travels faster than sound - that's why most people appear bright until you hear them speak.
Hi Chris,
Ist natuerlich ne Idee, aber bei mir mit dem momentanen Code
nicht wirklich praktisch, da er in Wirklichkeit nen Tick komplizierter ist.
Die Schleife ruft eine Funktion auf und viele Aufrufebenen tiefer ist der alert().
Einige Funktionen haben bereits return Werte fuer andere Dinge.
Frueher oder spaeter sollte ich den code wirklich so aufraeumen, dass confirm problemlos verwendet werden kann.
Allerdings find ich es etwas mickrig von den Browserherstellern, dass eine
site, die einen mit alerts() bombardiert den Browser mehr oder weniger lahmlegt.
Meiner Meinung nach sollte alert() nur fuer einen tab modal sein und man sollte jederzeit faehig sein den tab noch zu schliessen.
Besser waere vielleicht sogar noch, dass wenn man ein alert fenster schliesst (aufs 'x' oben rechts klicken und nicht auf 'OK'), man gefragt wird ob man das Javascript abbrechen will.
Naja, man kann ja immer ein bischen traeumen.
bye
Klaus
Hi,
n=5;
for(i=0;i<n;i++) alert("na stoppmichdoch"+i);
> >
> > Wie kann ich denn Firefox dazu bringen mein Script abzubrechen.
> > Bei n = 5 kann man ja noch 5 mal klicken, wenn n aber dummerweise etwas groesser waere es manchmal angenehm einfach zu stoppen.
>
> Dann nimm doch confirm statt alert - und lasse dessen Rückgabewert mit in die Laufbedingung der Schleife mit einfliessen.
> Dann kannst du als Nutzer aktiv aus der Schleife aussteigen, wann immer dir danach ist.
>
> MfG ChrisB
>
>
Hallo klausfpga
Ist natuerlich ne Idee, aber bei mir mit dem momentanen Code
nicht wirklich praktisch, da er in Wirklichkeit nen Tick komplizierter ist.Die Schleife ruft eine Funktion auf und viele Aufrufebenen tiefer ist der alert().
Einige Funktionen haben bereits return Werte fuer andere Dinge.
Du musst den Rückgabewert des „confirm” nicht unbedingt direkt verwenden, oder als Rückgabewert von Funktion zu Funktion schleifen. Du könntest ihn auch in einer Variable speichern, die sowohl der Funktion mit der Schleife als auch der aufgerufenen bekannt ist.
Auf Wiederlesen
Detlef
Wenn Du das nur zum Testen brauchst, könntest Du eine Ausnahme mit throw "werfen".
Hi,
Ich hab folgendes kleinen Javascript zweizeiler.
n=5;
for(i=0;i<n;i++) alert("na stoppmichdoch"+i);
>
> Wie kann ich denn Firefox dazu bringen mein Script abzubrechen.
Warte, warte... ich habs gleich...
aah, da ist es: https://bugzilla.mozilla.org/show\_bug.cgi?id=61098
Servus,
for Log-Ausgaben ist alert recht unpraktisch. Ich empfehle dir, eine Fehlerkonsole herzunehmen. Firebug würde sich z.B. anbieten.
Gruss
Patrick
for Log-Ausgaben ist alert recht unpraktisch. Ich empfehle dir, eine Fehlerkonsole herzunehmen. Firebug würde sich z.B. anbieten.
Huch, war eigentlich als Antwort auf das OP gedacht, nicht den Teilthread.
Wow, das Problem ist erst seit 9 Jahren bekannt und scheibar sit den Entwicklern immer noch keine Befriedigende Loesung eingefallen.
Hi,
Ich hab folgendes kleinen Javascript zweizeiler.
n=5;
for(i=0;i<n;i++) alert("na stoppmichdoch"+i);
> >
> > Wie kann ich denn Firefox dazu bringen mein Script abzubrechen.
>
> Warte, warte... ich habs gleich...
>
> aah, da ist es: https://bugzilla.mozilla.org/show\_bug.cgi?id=61098