Seite 1 von 1
javascript onbeforeonload
Verfasst: 20.01.2008, 19:15
von harakiri
Hallo Leute,
wieder mal was kniffliges:
Ich möchte, wenn ein User meine Seite verlässt oder den Browser schliesst, dass eine Meldung mit der Möglichkeit der Auswahl ausgegeben wird.
Habe sowas auch schon gefunden:
<script type=\'text/javascript\'>
<!--
window.onbeforeunload = function () {
return "Sie haben noch Artikel in Ihrem Warenkorb, wenn Sie die Seite jetzt verlassen wird Ihr Warenkorb gelöscht!";
}
//-->
</script>'
Leider kommt diese Meldung aber auch, wenn der User sich auf meiner Seite (innerhalb der URL) bewegt.
Wie kann ich auslesen, welche URL aufgerufen wurde, damit diese Meldung nur kommt, wenn der User die Seite (meine Domain) wirklich verlässt??
bin für jede Hilfe dankbar!!
Verfasst: 20.01.2008, 19:29
von net(t)worker
innerhalb der Funktion noch überprüfen ob eine bestimmte variable gesetzt wurde und nur die meldung erscheinen lassen wenn sie nicht gesetzt ist... und dann bei jedem Link eben diese variable setzen lassen sobald dieser angeklickt wird....
Verfasst: 20.01.2008, 19:42
von harakiri
Danke,
ich möchte aber die Seitenstruktur nicht verändern, weshalb ich keine Variable (get) anhängen möchte.
Kann ich per Link (a href) auch ne post variable übergeben?
Oder gibts ne andere Möglichkeit??
Verfasst: 20.01.2008, 19:48
von net(t)worker
es handelt sich nur um eine JS Variable.... die musst du also garnicht zum webserver übertragen und so ändern sich die urls garnicht....
Verfasst: 20.01.2008, 19:54
von net(t)worker
Verfasst: 20.01.2008, 19:54
von harakiri
ich habe nun an alle Links per mode rewrite die variable intern=intern gesetzt.
der Code wird nun nur ausgeführt, wenn die variable intern ungleich intern ist.
nun kann ich aber das Fenster wieder verlassen ohne Meldung!
kann ich irgendwie die vom Browser aufgerufene (nicht die jetzt angezeigte) URL auslesen?
Verfasst: 20.01.2008, 21:36
von harakiri
noch jemand ne Idee, wie ich die durch den Browser aufgerufene URL abfangen kann und per javascript vergleichen kann?
Verfasst: 20.01.2008, 21:45
von net(t)worker
geht denn das beispiel das ich dir oben genannt hatte nicht?
Verfasst: 20.01.2008, 22:01
von harakiri
hallo nettworker,
danke für den Tipp, aber leider funktioniert das nicht.
Ich möchte die Links auch nicht als javascript (onclick) öffnen, da Google diese dann nicht mehr sicher verfolgt.
Gibts dazu noch ne Idee?
Verfasst: 20.01.2008, 22:32
von net(t)worker
naja... das onclick kann man doch auch per js den einzelnen links zuordnen, dann ist es für google nicht erkennbar.... das onclick sorgt ja nur dafür das die js bariable gesetzt wird, die dann verhindert das die Nachricht angezeigt wird....
eine andere möglichkeit wird es wohl nicht geben, man kann ja nicht per js die url des nächsten seitenaufrufes ermitteln, sobald diese Daten im Browser vorliegen ist die ursprüngliche site ja im Grunde schon verlassen.... aber genau dort musst du ja ermitteln ob die Nachricht angezeigt werden soll oder nicht...