Du bist nicht angemeldet.

Lieber Besucher, herzlich willkommen bei: WebStyleBoard. Falls dies dein erster Besuch auf dieser Seite ist, lies bitte die Hilfe durch. Dort wird dir die Bedienung dieser Seite näher erläutert. Darüber hinaus solltest du dich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutze das Registrierungsformular, um dich zu registrieren oder informiere dich ausführlich über den Registrierungsvorgang. Falls du dich bereits zu einem früheren Zeitpunkt registriert hast, kannst du dich hier anmelden.

1

Donnerstag, 27. Oktober 2005, 17:06

Cookie setzen und auslesen

Hallo. Nachdem ich nun meine Leiste dank eurer hilfe ausblenden kann, habe ich nun ein kleines, weiteres Problem: Es wäre toll, wenn die Leiste ausgeblendet bleiben würde, wenn man zwischen den Seiten wechselt. Dafür kommt eigentlich nur ein kleiner Cookie in frage. Ich habe mich auch schon daran versucht, aber irgendwie will das nicht klappen.

Mein Qäulcode:

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
	<script type="text/javascript" language="JavaScript">
	<!--
		function ListeAusblenden()
		  {
			toggle("fold","userbar");
			toggle("unfold","keine-userbar")

			document.cookie = "name=" + "userbar" + "path=" + "/" + "userbar=" + "zu";
		  }

		function ListeEinblenden()
		  {
			toggle("unfold","userbar");
			toggle("fold","keine-userbar")

			document.cookie = "name=" + "userbar" + "path=" + "/" + "userbar=" + "offen";
		  }

		if(document.cookie)
		  {
			if(document.cookie == "offen")
			  { ListeAusblenden(); }
			else
			  { ListeEinblenden(); }
		  }
	// -->
	</script>

	<div id="keine-userbar">

		<p><a href="#" OnClick="ListeEinblenden()">Leiste einblenden</a></p>

	</div>

	<div id="userbar">

		<p id="ausblenden"><a href="#" OnClick="ListeAusblenden()">Leiste ausblenden</a></p>

		<p>Leiste zum ein-/ausbleden</p>

	</div>

	<script type="text/javascript" language="JavaScript">
	<!--
		ListeEinblenden()
	// -->
	</script>

Da ich ja, wie gesagt, keine Ahnung von JavaScript habe, wäre es ganz nett, wenn ihr mir sagen könntet, wie das realisieren kann.

MfG Arne :confused:

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Nash.Bridges« (27. Oktober 2005, 17:06)


2

Donnerstag, 27. Oktober 2005, 21:10

Ich hab davon auch leider keine Ahnung, aber kannst es bei der If-Abfrage mal mit

Quellcode

1
2
3
if (document.cookie.length>0)
  {
 
versuchen.
Hab aber noch nie mit JS- Cookies gearbeitet
Signatur von »1st Choice« YOU CANT STOP THE ROCK!
Veni, Rogavi, Vici.

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »1st Choice« (27. Oktober 2005, 21:25)


3

Donnerstag, 27. Oktober 2005, 21:44

Hi,
Dein Cookie trägt den Namen "userbarpath=/userbar=zu" - ist wohl nicht das, was Dir vorschwebte... ;)

Schau mal auf meine Seite http://www.1ngo.de/web/css-layout.html - hier bekommst Du (wenn Javascript aktiviert ist) bei jedem Aufruf ein zufälliges Layout, außer wenn Du die Seite mit Parameter aufrufst oder wenn Du bereits zuvor ein Layout ausgewählt hattest und der Cookie (noch) vorhanden ist. Verantwortlich ist hierfür die kleine Funktion

Quellcode

1
2
3
4
5
6
7
8
9
10
function Keks (Param) {
  if (Param) {
    var d = new Date(new Date().getTime()+(1000*86400*365));
    document.cookie = "csslayout=" + Param + "; expires=" + d.toGMTString() + ";";
  }
  else if(document.cookie) {
    var k = document.cookie;
    return k.slice(k.indexOf("=")+1);
  }
}

Ich hätte hier auch zwei Cookies etzen können, finde aber freundlicher, es bei einem zu belassen und in diesen mehrere Daten unterzubringen.
Gruß
Ingo

4

Freitag, 28. Oktober 2005, 18:42

Zitat von »Ingo«

Hi,
Dein Cookie trägt den Namen "userbarpath=/userbar=zu" - ist wohl nicht das, was Dir vorschwebte... ;)

Schau mal auf meine Seite http://www.1ngo.de/web/css-layout.html - hier bekommst Du (wenn Javascript aktiviert ist) bei jedem Aufruf ein zufälliges Layout, außer wenn Du die Seite mit Parameter aufrufst oder wenn Du bereits zuvor ein Layout ausgewählt hattest und der Cookie (noch) vorhanden ist. Verantwortlich ist hierfür die kleine Funktion

Quellcode

1
2
3
4
5
6
7
8
9
10
function Keks (Param) {
  if (Param) {
    var d = new Date(new Date().getTime()+(1000*86400*365));
    document.cookie = "csslayout=" + Param + "; expires=" + d.toGMTString() + ";";
  }
  else if(document.cookie) {
    var k = document.cookie;
    return k.slice(k.indexOf("=")+1);
  }
}

Ich hätte hier auch zwei Cookies etzen können, finde aber freundlicher, es bei einem zu belassen und in diesen mehrere Daten unterzubringen.
Gruß
Ingo


[offtopic]
Stell doch bitte das laden des ersten Styles irgendwie ab. Ich sehe immer erst das blaue Layout, dann springt alles, und ich sehe das neue..
[/offtopic]
Signatur von »t-ob-i« {SIGNATUR}

5

Samstag, 29. Oktober 2005, 02:22

Hi,

Zitat von »t-ob-i«

[offtopic]
Stell doch bitte das laden des ersten Styles irgendwie ab. Ich sehe immer erst das blaue Layout, dann springt alles, und ich sehe das neue..
[/offtopic]

Das bemerke ich mit DSL übrigens kaum...
Aber da verlangst Du echt viel, weil meine Wechsel-Funktion nicht nur die Styles ausblendet, sondern auch auf der Seite angezeigte Inhalte ändert. Ich kann sie daher erst onload aufrufen.
Aber wenn ich mal viel Zeit und Lust habe, werde ich mal die Funktion splitten und den Stylewechsel direkt ausführen.
Gruß
Ingo

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Ingo« (29. Oktober 2005, 02:23)


6

Dienstag, 1. November 2005, 15:35

Danke, jetzt klappt es. Dein Ansatz hat mir zwar nicht direkt weitergeholfen Ingo, aber er hat mir ein paar mal beim Verstehen von JavaScript geholfen.

@Ingo und Tobi: Ich habe das auch schon gemerkt, dass zuerst das Standart-Design geladen wird ... und das obwohl ich DSL habe :sick:

MfG Arne :).