# onunload abbrechen



## rotmilan (18. Mai 2005)

hi,

ich möchte gern das falls jemand versucht eine Seite zu aktualisieren durch onunload die möglichkeit bekommt durch ein alert die Seite doch nicht zu aktualisieren oder verlassen, und zu dem altem Sachverhalt zurückkehrt.

Quasi der alert ihm nur eine möglichkeit lässt und zwar auf der Seite zu bleiben, ein kurzer Text warum und ein button ok und der user hat doch nicht aktualisiert oder die Seite verlassen.


mfg rotmilan


----------



## Tobias Menzel (18. Mai 2005)

Hi,

es gibt bei neueren Browsern das Ereignis "onbeforeunload", bei dem Du false zurückgeben könntest. Im Firefox bekommst Du dann allerdings eine Confirm-Box, die Dir dennoch erlaubt, die Seite neu zu laden bzw. zu verlassen.

Frage: Warum in alles auf der Welt willst Du das Verlassen Deiner Seite verbieten?   

Gruß
.


----------



## rotmilan (18. Mai 2005)

hi,

ich möchte das soweit wie möglich für den ie umsetzen.

Bei der Sache geht es um ein Test wo man nicht einfach wieder von vorne anfangen soll.

mfg rotmilan


----------



## Sven Mintel (19. Mai 2005)

Im IE geht es auch mit der von Datic beschriebenen Methode.(ich wusst garnicht, dass auch andere Browser das kennen)
Aber wie Datic das bereits erwähnte...der User hat *immer* die Option, die Seite zu verlassen.
Wie stellst du dir das denn sonst vor....man kommt auf deine Seite, und um dort wieder weg zu kommen, muss man dann den Netzstecker ziehen  

Wenn du nicht willst, dass man den Test von vorne beginnen muss, speichere die bereits erhaltenen Daten in einem Cookie, einer Session oder sonstwo... dann kannst du immer beim letzten Testpunkt fortfahren.

Infos zu *beforeonunload*:
http://msdn.microsoft.com/workshop/author/dhtml/reference/events/onbeforeunload.asp


----------



## rotmilan (19. Mai 2005)

hi,

ihr habt ja recht, ich will nimanden zwingen, aber der Nutzer soll wenigstens die Möglichkeit haben durch den alert die Entscheidung zu treffen doch auf der Seite zu bleiben oder sie halt nicht zu aktulisieren.

mfg rotmilan


----------



## Ann Drew (19. Mai 2005)

Und nach dem popup "willst du die seite wirklich verlassen" kommt dann noch ein popup: "bist du ganz sicher ob du die seite verlassen willst" und da muss man dann NEIN anklicken damit man die seite verlassen kann.;-]

 Machts nicht zu kompliziert.


----------



## rotmilan (19. Mai 2005)

hi,


dat soll mal so laufen:

du bist grad bei einem test der in einem Browser läuft, wenn du aktualisierst fängt der test von vorne an, also sollst du beim drücken darauf gewarnt werden und die aktualiesierung nicht geschehen lassen!

mfg mit freundlichen grüssen wir gehen drauf für ein Leben voller Schall und rauch ....


----------



## Sven Mintel (19. Mai 2005)

Naja...dann ist doch alles gut....genau das kannst du per onunload machen.


----------



## rotmilan (11. Juni 2005)

ja blos weiss ich noch nicht wie genau.

<body onUnload="Aufhalten()">

function Aufhalten(){
x = confirm("Sie dürfen die Seite während des Tests nicht verlassen");
}


bei dieser Variante bekomm ich zwar eine popup wo ich auswählen kann aber in beiden Fällen wird der jeweilige unload ausgeführt.
was benötige ich anstatt confirm

mfg rotmilan


----------



## Sven Mintel (12. Juni 2005)

http://msdn.microsoft.com/workshop/author/dhtml/reference/events/onbeforeunload.asp


----------



## rotmilan (26. November 2005)

danke für den link hab es jetzt so gemacht:

window.onbeforeunload = function () {
 return "Wenn Sie jetzt die Seite verlassen sind sie durchgefallen.";
}

mfg rotmilan


----------

