Flash mit Cookie für abschaltung des Intros
oliver
- javascript
0 Robert Bamler0 oliver0 oliver0 Robert Bamler0 oliver
Hallo zusammen
Ich hab da n Problem und weiss überhaupot nicht wie es lösen!
Im Moment hab ich ein Flashintro, was auch super läuft. Nun muss ich aber ein Cookie programmieren, damit das Intro bei eimaligen wegklicken def. nicht mehr kommt.
Hat das jemand schon mal genmacht? Und wenn ja, wie mach ich das?
Hab da echt null Erfahrung...
Danke für jede Hilfe.
gruss
Oliver
Hallo Oliver,
Im Moment hab ich ein Flashintro, was auch super läuft. Nun muss ich aber ein Cookie programmieren, damit das Intro bei eimaligen wegklicken def. nicht mehr kommt.
Cookies kannst du in JavaScript über die document.cookie-Eigenschaft setzen und auslesen. Du kannst also beim Klick auf den Skip-Intro-Link das Cookie setzen. Über onload kannst du bei jedem Seitenaufruf prüfen, ob das Intro übersprungen werden soll:
<body onload="if (document.cookie.indexOf('skipintro=true') >= 0) location.replace('ueberspringen.htm');">
<!-- Hier kommt das Flash-Intro hin -->
<a href="ueberspringen.htm" onclick="document.cookie='skipintro=true'; return true;">Skip intro</a>
</body>
Sollte so funktionieren.
Robert
das hört sich ja ganz einfach an.
Super, danke. Werd ich ausprobieren und sonnst komm ich nochmals.....
Danke Robert
Gruss
Oliver
Hi Robert
Also ich hab Dein Script rein getan, doch leider läuft dieses nicht. Ich komme nach wie vor auf das Intro.
Hab allerdings noch einen Sniffer drinn und dort hab ich die Cookie Abfrage gemacht, aber das sollte ja keine Rolle spielen, oder?
Muss ich evtl. noch was anderes machen damit er ein Cookie schreibt? JavaScript??
Danke nochmals und Gruss
Oliver
Hallo Oliver,
Also ich hab Dein Script rein getan, doch leider läuft dieses nicht. Ich komme nach wie vor auf das Intro.
Ja, das war schlampig geschrieben. Hab auch gerade gesehen, dass Cookies nur angenommen werden, wenn sie mit einem Verfallsdatum beschriftet sind (jedenfalls im IE6). Du brauchst also im head folgende Funktion:
<script language="JavaScript">
<!--
function cookieSetzen() {
var ablauf = new Date();
ablauf.setTime(ablauf.getTime() + 30 * 24*60*60*1000);
document.cookie = "skipintro=true; expires=" + ablauf.toGMTString();
return true;
}
//-->
</script>
, die du dann im Link aufrufst:
<a href="ueberspringen.htm" onclick="return cookieSetzen()">Skip intro</a>
Im Beispiel hält das Cookie 30 Tage. Das kannst du ja so anpassen, wie du es brauchst.
Jetzt sollte es aber funktionieren.
Viel Erfolg,
Robert
Hi Robert
Ja, jetzt gehts. Doch leider nur für IE und NN 4.5, aber nicht NN6,x. Muss ich für NN extra eine eigene Funktion haben, damit es nicht nach der laufenden Sitzung beendet?
Aber wir komen dem Endergebniss näher, wa....
;-)
danke
gruss
oliver
Hallo Oliver,
Muss ich für NN extra eine eigene Funktion haben, damit es nicht nach der laufenden Sitzung beendet?
Nein, bei NN sind Cookies ganz einfach per Voreinstellung deaktiviert (was ich ehrlichgesagt auch für sinnvoll halte). Wenn du über
Bearbeiten --> Einstellungen... --> Privatsphäre und Sicherheit --> Cookies
Cookies aktivierst, funktioniert es. Allerdings kannst du wohl nicht davon ausgehen, dass deine Besucher Cookies aktiviert haben.
Robert