Erik: Java-Script läuft obwohl jemand auf Abbrechen gedrückt hat ?

Hallo,

.. ich kämpfe mit folgendem Problem.
Ich will eine Funktion mittels

window.setTimeout("function()", Zeit);

aufrufen - das ist auch kein Problem - aber ich will es NICHT starten falls jemand dazwischen den Abbrechen Button des browsers drückt...

Ich dachte immer wenn jemand auf Abbechen drückt, stoppt er damit auch java - is aber nicht so ?!?

Ich hab schon versucht es über Umwege mit onLoad (bringt nix weils nur beim Aufruf der Seite was macht) bzw. onAbort (bringt auch nicht viel weils nur bei einem img tag funktioniert) zu schaffen, leider vergebens.

Hat jemand eine Idee wie ich überprüfen kann, ob das Laden der Seite abgebrochen wurde ? Bzw. wie starte ich zeitverzögert ein java-script dass aber eben nicht gestartet wird wenn jemand bereits auf Abbrechen gedrückt hat ?

..bin für jede Hilfe dankbar !!!

lg
Erik

  1. Hallo Erik

    Wenn es nicht hilft, den JavaScript-code mit onload="" aufzurufen, kannst Du versuchen einen <script>-Block ganz am Ende der HTML-Datei zu verwenden.

    Grüße

    Daniel

    1. Danke für die Hilfe !

      Das Problem ist, dass die zu ladende Seite aus 2 frames besteht.
      In einem der Frames wird das Java-script ausgeführt, aber das sollte eben nur dann passieren wenn niemand auf abbrechen drückt, bzw. bis der untere frame (auf den ich keinen Einfluss habe) geladen ist.

      lg
      Erik

      1. Hi Erik

        Das Problem ist, dass die zu ladende Seite aus 2 frames besteht.
        In einem der Frames wird das Java-script ausgeführt, aber das sollte eben nur dann passieren wenn niemand auf abbrechen drückt, bzw. bis der untere frame (auf den ich keinen Einfluss habe) geladen ist.

        Das Verstehe ich jetzt nicht ganz.
        Das Javascript soll so lange ausgeführt werden, bis jemand auf abbrechen drückt oder der untere Frame geladen ist?
        Meinst Du das so?

        Grüße

        Daniel

        1. Hallo,

          ..also die Funktion im z.B. oberen Frame soll nicht ausgeführt bzw. soll abgebrochen werden, falls jemand das Frameset (d.h. auch den z.B. unteren Frame) NICHT komplett lädt.

          Das ist für ne Überprüfung ob jemand ein Pop-Up gesehn hat oder nicht.
          Z.B.: das Pop-Up popt auf und jemand drückt bevor es geladen wird auf abbrechen - dann soll im oberen frame ein javascript stehen, das überprüft ob der Pop-Up-Inhalt im unteren Frame geladen wurde....

          ..bis jetzt hab ich es nicht geschafft was zu finden mit dem das geht !

          lg
          Erik

          1. Hallo Erik,

            ..also die Funktion im z.B. oberen Frame soll nicht ausgeführt bzw. soll abgebrochen werden, falls jemand das Frameset (d.h. auch den z.B. unteren Frame) NICHT komplett lädt.

            Dann führe die Funktion doch erst dann aus, wenn beide Frames komplett geladen sind. Dazu kannst du _im Frameset_ einen onload-Event definieren.

            Grüße, Stefan

      2. Hi Erik,

        folgendes wäre eine Möglichkeit: Lege die auszuführende Funktion in das Frameset. Mach ihre Ausführung von der richtigen Setzung einer Variablen abhängig. Sagen wir: flagvalue==2. Schreib in _beide_ in das Frameset zu ladende Dateien ganz am Ende: flagvalue = flagvalue + 1; Die Funktion wird dann nur ausgeführt, wenn beide Dateien des Framesets vollständig geladen sind. Macht das das was Du willst?

        Grüße,

        Utz

        1. Hallo...

          ..das Problem ist nur, dass der eine frame "Fremd-content" ist, bzw. ich den Inhalt nicht verändern kann...

          lg
          Erik

          1. Hallo Erik

            Du kannst den Eventhandler auch zuweisen.
            function loaded() {
            ....
            }

            frames["name"].onload = loaded;

            So solltest Du den Vorschlag von Utz trozdem umsetzen können.

            Grüße

            Daniel