Zum Inhalt springen

[JS] swap menu


ZuVieL

Empfohlene Beiträge

indem du z.B. eine session aufmachst und den aktuellen status des menüs in einer session-variable speicherst.

Javascript kennt leider keine Sessions ;) und eine Session wäre hier IMHO auch nicht angebracht. Eine Session ist dazu da, Daten auf dem Server für einen Benutzer zu speichern, und zwar nicht nur bis zur nächsten Seite (vorallem würde die Session erst beim Abruf der Seite angelegt, für die Seite also, die den aktuellen Status schon braucht).

Mit Javascript kannst du das entweder über einen Parameter in der URL machen (unschön vielleicht), oder indem du einen Cookie setzt (den kannst du mit Javascript auslesen, bin wegen dem schreiben aber nicht sicher).

EDIT:

Denke der Cookie wäre die einzig mögliche Methode. Weil du ja nicht alle URLs ändern willst jedesmal.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Javascript kennt leider keine Sessions ;) und eine Session wäre hier IMHO auch nicht angebracht.
ups:D hast natürlich recht.ich sollte keine posts so früh am morgen schreiben.

dass es allerdings nicht angebracht wräe nehm ich dir nicht ganz ab. warum sollte ich sowas nicht in sessions speichern (vorausgesetzt ich verwende php und kann das ganze auch wieder auslesen^^).

cookies können immerhin abgeschaltet werden. sessions nicht.

lg

jasso

Link zu diesem Kommentar
Auf anderen Seiten teilen

warum sollte ich sowas nicht in sessions speichern (vorausgesetzt ich verwende php und kann das ganze auch wieder auslesen^^).

cookies können immerhin abgeschaltet werden. sessions nicht.

Weil die Session viel zu spät wäre. Um diese Daten in der Session speichern zu können, müssen die Daten erstmal an den Server übermittelt werden. Das PHP-Skript nimmt die dann und speichert sie in der Session. Und dann? Neben dem speichern in der Session müssen die Daten auch mit der aufgerufenen Seite wieder mitausgegeben werden (als Javascript Code), damit das Javascript-Menü was davon hat. Und beim nächsten aufruf dasselbe wieder.

Und du hast da nix überlesen. Du speicherst nur in die Session und brauchst die Daten dann nie wieder. Wozu also eine Session?

Wenn du es eh schaffst die Daten entsprechend an den Server zu geben, dann hat die neue Seite sie ja schon. Und das ist ja das Problem.

Wenn es per PHP (oder einer anderen serverseitigen Sprache) geht, wäre noch eine Möglichkeit, dass das Skript das Menü bestimmt indem die Seite bzw. der Link zur Seite ist und das als Javascript mit ausgibt (welches dann das Menü öffnet). Jenachdem wie dein Menü aber aufgebaut ist und ob du auch andere Möglichkeiten hast zu dieser Seite zu kommen ist das wohl keine gute Lösung.

EDIT:

Ach ja, Javascript kann auch abgeschalten sein ;)

Eine Navigation nur auf Javascript Basis ist auch überdenkenswert (wobei ich die Seite sonst ja nicht kenne).

Link zu diesem Kommentar
Auf anderen Seiten teilen

ich habe nicht wirklich plan, vllt kann mir einer weiterhelfen...

mein code:


<script>

function swapnavi()

{

	myDiv = document.getElementById('swapnavi');

	if (myDiv.style.visibility == "hidden")

	{

		myDiv.style.visibility = "visible";

		myDiv.style.display = "block";

	}

    else {

		myDiv.style.visibility = "hidden";

		myDiv.style.display = "none";

	}

}

</script>


<a href="javascript: swapnavi();">Klick</a>

<br>

<div id="swapnavi" class="nav_table" style="visibility: hidden; display: none;">

	<li>blab</li>

	<li>blub</li>

	<li>blabla</li>

</div>

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ganz anderer Ansatz:

Wenn Du eh mit Javascript arbeitest könntest Du die ganze Seite auf Ajax basierend schreiben.

Dann hättest Du Deinen Navigationsbereich und einen Contentbereich in den Dein Content eingeladen wird, ohne dass Du die Seite neu laden musst, und somit auch die Navigation im momentanen Status stehen bleibt.

[edit] huh? der Editor spinnt irgendwie. ich versuchs nochmal:

Dann hättest Du Deinen Navigationsbereich und einen Contentbereich in den Dein Content eingeladen wird, ohne dass die Seite neu geladen werden muss, und somit auch die Navigation im momentanen Status stehen bleibt.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...