[JavaScript] onbeforeunload rückgabewerte

Eisbaer

Erfahrenes Mitglied
Hallo zusammen. Habe mich heute schon den ganzen Tag durchs Netzt gegoogelt, bin auch schon gut weiter gekommen nun habe ich noch ein letztes Problem.

Ich habe für ein CMS System eine Überwachung in Javascript ob der Nutzer das Fenster eventuell zumacht damit ich dann über einen Ajax Befehl seine Session zerstören kann.

Es funktioniert alles bis auf das mir die Rückgabewerte vom Fenster fehlen.

Folgendes javascript überwacht:

Code:
var movement_event_handler; 
movement_event_handler = 0; 

window.onbeforeunload = function (evt) { 

if(!movement_event_handler){ 
var message = 'Ihre Aktive Benutzersitzung wird dann aus Sicherheitsgründen geschlossen.'; 
if (typeof evt == 'undefined') { 
evt = window.event; 
} 
if (evt) { 
evt.returnValue = message; 
} 

return message; 

movement_event_handler = 0; 
} 

}

Damit diese Meldung nicht jedesmal angezeigt wird wenn ich mit innerhalb vom System bewege habe ich den Zusatzwert

Code:
movement_event_handler = 0;

in Spiel gebracht, der bei jedem Link innerhalb vom System aktiviert wird und somit die Meldung nur beim zumachen und beim refresh (das würde ich auch gerne noch abfangen und ausschließen) angezeigt wird.

Code:
<a class="xy" onclick='javascript:movement_event_handler=1' href=seite.html">testlink</a>

Klicke ich jetzt "Abbrechen" passiert wie gewollt nichts und die Seite wird nicht geschlossen, klicke ich "OK" wird die Seite geschlossen.

Ich möchte jetzt gerne das "OK" abfangen und dann eine Ajax Aufruf Starten. Ich habe nur keine Ahnung wie ich an den Rückgabewert komme.

Jemand eine Idee?

Danke für eure Hilfe.
 
Moin,

onbeforeunload ist nicht dafür gedacht, dass der Entwickler etwas abfangen kann, sondern nur für den User. Die zugewiesene Funktion hat auch keinen Rückgabewert, den du ermitteln könntest, denn der Rückgabewert ist quasi die MsgBox.
 

Neue Beiträge

Zurück