Roland: Bei onUnload Ziel-Url feststellen

Hallo,
da ich mich zum ersten mal an Euch wende, hoffe ich, dass ich mich nicht zu ungeschickt ausdrücke.
Hier mein Problem:
Ich arbeite gerade an einem Warenkorbsystem. Die Daten des Warenkorbes speichere ich im Namen des Fensters (self.name) der ja, solange sich der User auf meiner Site befindet, vorhanden ist. Soweit so gut.
Nun möchte ich, wenn der Benutzer meine Seite verlässt und noch Daten im Warenkorb hat ihn darauf hinweisen.
Mein Gedanke war folgender:
<body onUnload="abfragen()">.......
<script>
function abfragen(){
if (self.name){
Abfragen ob der User trotz Ware im Korb die Seite verlassen will.
Wenn nicht
location.href="wieder zu meiner Seite";
}
Jetzt das Problem. Das Event onUnload tritt ja auch dann ein, wenn der User sich innerhalb meiner Site bewegt.

Ich hoffe das Problem ist verstanden.

Schon mal besten Dank für die Hilfe.
Warscheinlich sehe ich den Wald vor lauter Bäumen nicht.

  1. Hi!
    Ich hab einen Vorschlag zur Lösung Deines Problems...

    mach doch den TAG nicht im <body onUnload="abfragen()">.......

    sondern im TAG <frameset onUnload="abfragen()">.......
    in der Frameset-Datei, dann wird das "onUnload" nur bei verlassen des ganzen Framesets ausgelöst.

    und würgt's schon??

    1. Hi!
      Ich hab einen Vorschlag zur Lösung Deines Problems...

      mach doch den TAG nicht im <body onUnload="abfragen()">.......

      sondern im TAG <frameset onUnload="abfragen()">.......
      in der Frameset-Datei, dann wird das "onUnload" nur bei verlassen des ganzen Framesets ausgelöst.

      und würgt's schon??

      Ist mir klar.
      Habe aber meine kpl. Site ohne frames aufgebaut.
      Trotzdem Danke.
      Hat vieleicht noch jemand eine Anregung?

    2. Hi auch,

      mach doch den TAG nicht im <body onUnload="abfragen()">.......
      sondern im TAG <frameset onUnload="abfragen()">.......
      in der Frameset-Datei, dann wird das "onUnload" nur bei verlassen
      des ganzen Framesets ausgelöst.

      in wie vielen Browsern hast Du das ausprobiert?
      Und war Netscape 4 einer derselben?

      Viele Grüße
            Michael

  2. Moin!

    Hier mein Problem:
    Ich arbeite gerade an einem Warenkorbsystem. Die Daten des Warenkorbes speichere ich im Namen des Fensters (self.name) der ja, solange sich der User auf meiner Site befindet, vorhanden ist. Soweit so gut.

    Ich denke, dieser Absatz sollte so lauten:

    Hier mein Problem:
    Die Daten des Warenkorbes speichere ich im Namen des Fensters (self.name)

    Mal ernsthaft: Wenn du in irgendeiner Weise ein ernstzunehmendes Warenkorbsystem basteln willst, dann benutze irgendeine Art von Session-Management und serverseitige Skriptunterstützung, aber doch bitte nicht solch eine Krücke.

    Ansonsten:

    if (self.name){
    Abfragen ob der User trotz Ware im Korb die Seite verlassen will.
    Wenn nicht
    location.href="wieder zu meiner Seite";
    }

    Solche "Ich bin wichtig, mich verläßt du nicht!"-Skripte sind sowieso der Horror. Du kannst davon ausgehen, daß das aus dem einen oder anderen Grunde nicht funktioniert (wobei "abgeschaltetes Javascript" nicht darunter fällt, weil diejenigen den Warenkorb ja niemals befüllen können).

    Wer die Seite verlassen will, wird nicht extra um Erlaubnis fragen. Und wenn er dazu den Warenkorb leeren muß, wird er - bildlich gesprochen - wohl eher den Korb dem Shopanbieter um die Ohren hauen oder vor die Füße knallen, als frohen Mutes noch ein einziges Mal wiederzukommen. "Usability" ist das Zauberwort. Und "Nachdenken", bevor man eine Dummheit einbaut.

    - Sven Rautenberg