XHTMLforum

XHTMLforum (http://xhtmlforum.de/index.php)
-   Javascript & Ajax (http://xhtmlforum.de/forumdisplay.php?f=83)
-   -   Problem bei Cookie setzen mit Jquery (http://xhtmlforum.de/showthread.php?t=66212)

ha-bauer 19.11.2011 15:23

Problem bei Cookie setzen mit Jquery
 
Hallo zusammen,
ich verzweifle gerade daran, ein einfaches Cookie mit der Javascript-Bibliothek Jquery zu setzen. Folgendes: Ich habe eine div-Box, die die Klasse .hbb-ticker hat. Diese Box soll, wenn das Cookie nicht gesetzt ist, erscheinen und wenn das Cookie gesetzt wird, nicht mehr erscheinen. Das Cookie soll gesetzt werden, wenn ein Button innerhalb des Containers mit der Klasse .hbb-ticker-inner, der wiederum innerhalb von dem Div mit der Klasse .hbb-ticker platziert ist, gedrückt wird.
Folgenden Quelltext habe ich bereits:
HTML-Code:

var datum;
if (document.cookie != "") {
$(".hbb-ticker-inner button").mouseover(function() {
$(this).css("cursor","pointer");
});
$(".hbb-ticker-inner button").click(function() {
$(".hbb-ticker").hide();
});
}
else {
$(".hbb-ticker").hide();
}
datum = new Date();
datum.setMonth(datum.getMonth()+9);
document.cookie = "dagewesen=ja; expires=" + datum.toGMTString();

Mein Problem liegt jetzt darin, dass sich die Box zwar schließt, wenn ich auf den Button klicke. Jedoch, wenn ich dann die Seite wechsle (und das Cookie eigentlich gesetzt sein sollte, so dass die Box nicht mehr erscheint) erscheint die Box wieder, ganz als ob das Cookie nicht gesetzt wurde.
Wo liegt mein Fehler? Es wäre nett, wenn mir jemand auf die Sprünge helfen könnte.
Vielen Dank für eine Antwort,
ha-bauer

Edit: Das Problem hat sich erledigt. Ich habe im Internet nach ein wenig googlen diese schöne Funktions-Sammlung gefunden, mit der ich ganz einfach das Cookie abfragen und bei Bedarf erstellen konnte. Nach Einbindung der Bibliothek funktioniert folgender Code:
HTML-Code:

if (!get_cookie("dagewesen")) {
$(".hbb-ticker-inner button").mouseover(function({
$(this).css("cursor","pointer");
});
$(".hbb-ticker-inner button").click(function() {
$(".hbb-ticker").hide();
var datum;
datum = new Date();
datum.setMonth(datum.getMonth()+9);
set_cookie("dagewesen","ja",datum.toGMTString());
});
}
else {
$(".hbb-ticker").hide();
}

Danke trotzdem! :)
Viele Grüße,
ha-bauer


Alle Zeitangaben in WEZ +2. Es ist jetzt 11:03 Uhr.

Powered by vBulletin® Version 3.8.11 (Deutsch)
Copyright ©2000 - 2019, vBulletin Solutions, Inc.

© Dirk H. 2003 - 2019