JQuery / HTML Elementstatus

PEASANT KING

Commander
Registriert
Okt. 2008
Beiträge
2.412
Guten Morgen,

ich bin nicht der größte JavaScript Experte, allerdings reicht es bis jetzt immer aus vernünftig Dinge um zu setzen.

Ich habe eine Webanwendung programmiert, in der es vertikale Menüleiste gibt, diese Menüleiste kann man mittels Klick verkleinern
bzw. in die Originalbreite verändern oder aber ganz ausblenden.
Mittels LocalStorage speicher ich die Einstellungen und rufe Sie dann beim erneuten Besuchen der Anwendung wieder auf klappt alles wunderbar.

Ich habe nur eine kleinigkeit die mich etwas nervt, und zwar wird ja erst die komplette Anwendung geladen und dann werden die Effekte angewendet, sprich wenn ich zuvor die Menüleiste verkleinert habe, startet die Seite im Default und nach ner Sekunde ist das Menü dann verkleinert.

Kann ich hier noch etwas tun, so dass die Menüleiste direkt im LocalStorage Zustand startet ohne diese kleine Verzögerung?
 
Nein, JavaScript wird erst ausgeführt, wenn die Seite geladen ist (onDomReady im Regelfall). Wenn davor das CSS was anderes vorgibt, dann ist das so. Umgehen kannst du das nur, wenn du das bspw. im Cookie hinterlegst und auf dem Server (vorhanden?) bereits bei der Auslieferung den Zustand im HTML richtig auslieferst.
 
Ach ja schade das wird dann wohl nicht gehen, ich manipuliere ja das CSS nach den Werten aus dem SavedState per User. Alles Session relevante wird in die Datenbank gespeichert und die Einstellungen der UI werden mittels LocalStorage gesichert, daher verwende ich auch keine Cookies.

Ja Server ist vorhanden.

Vielleicht würde es ja klappen, wenn ich die Komponenten immer hidden initialisiere und nach kompletten laden der Anwendung sichtbar mache.
 
Zuletzt bearbeitet:
PEASANT KING schrieb:
Ach ja schade das wird dann wohl nicht gehen, ich manipuliere ja das CSS nach den Werten aus dem SavedState per User. Alles Session relevante wird in die Datenbank gespeichert und die Einstellungen der UI werden mittels LocalStorage gesichert, daher verwende ich auch keine Cookies.
Der Local Storage ist aber nur im Client verwendbar, deswegen müsstest du dort die Brücke zwischen Server und Client mittels Cookie erschlagen.
PEASANT KING schrieb:
Vielleicht würde es ja klappen, wenn ich die Komponenten immer hidden initialisiere und nach kompletten laden der Anwendung sichtbar mache.
Na gut, dann hast du den Sprung eben in die andere Richtung. ;) Umgehen kannst du es nur auf genanntem Weg, indem der Server bereits den State ausliefert, den der Client wünscht bzw. auch hält.
 
Zurück
Oben