"mitscrollendes" Element - wie realisieren?

Hallo,

einige haben es vielleicht schon gesehen: eine Seite mit viel Inhalt und (beispielsweise) einer kleinen Box mit dem Menü.
Scrolle ich nach unten, dann „wandert“ das Menü mit (im Idealfall mit „softem“ Scrollen).

Wie kann so etwas mit „purem“ JS realisiert werden?
CSS („position:fixed“) ist in diesem speziellen Fall (Kundenvorgabe) leider nicht möglich - und prototype darf auch nicht verwendet werden :ps:
Allerdings steht das jquery Framework zur Verfügung, falls das was hilft.

Leider bin ich nicht fit genug mit AJAX… irgendwelche Tipps?

Bei position: fixed bliebe es ja relativ zum Anzeigebereich
stehen.
Mitrollen ist ja der ‘normale’ Fall, wenn man nicht besonders
trickst.

Daher sehe ich da jetzt das Problem nicht, wieso man js
verwenden muß, damit es mitrollt, das tut es doch meist sowieso,
wenn man position: fixed nicht verwendet.

Wenn man Inhalt und Menü beide unabhängig voneinander mit
position: absolute und definierter Breite/Höhe bzw Abstand
unten/oben/links/rechts vom Anzeigebereich festlegt, dann
overflow:auto angibt, kann man es hinbekommen, daß jeder
Bereich unabhängig voneinander rollbar ist, das erübrigt die
Verwendung von position:fixed, was sowieso weitere ähnliche
Tricks erfordert, damit zuviel Inhalt nicht unzugänglich wird.
Wenn wenig genug Inhalt im Menü ist, ist der der Effekt der
gleiche wie bei position:fixed, ohne dies verwendet zu haben oder
auch js. Je nachdem, wie geschickt man sich dabei anstellt,
funktioniert das sogar im MSIE6, der ja position:fixed fehlerhaft
interpretiert (als position:static).
Umgekehrt, wenn ein Menü mitrollen soll, muß man eigentlich
nur diese spezifische Situation vermeiden, dann passiert das von
alleine.

Es ist halt nicht möglich… das Layout steht bereits, das Projekt umfasst mehrere hundert Seiten und wird nicht mehr geändert.
Zudem ist die betreffende Box nur auf einigen wenigen Seiten zu sehen (als eine Art Zusammenfassung).

Es muss mit JS gelöst werden - wie gesagt: Kundenvorgabe…

Vielleicht habe ich mich nicht genau ausgedrückt: das Element (eine Tabelle, übrigens) soll beim Scrollen der Seite am Bildschirm , nicht an der Seite fixiert sein… also im sichtbaren Bereich bleiben, während der restliche Inhalt “drunter” scrollt.

Ein Beispiel: carmondo.de/konfigurator/show_all_options
Hier bleibt die Box “Was sagt die Community…” immer im Viewport.
Wie kann so etwas realisiert werden?

edit:
das, was Du oben beschrieben hast, hatte ich mal erstellt… ralph-mueller-wagner.de
Funktioniert prächtig, aber wie gesagt: grundlegende Layout-Änderungen sind in diesem Fall aus verständlichen Gründen nicht drin :wink:

Bei mir schweigt sie oder existiert nicht die ‘Community’, kann ich
also nicht nachvollziehen, was natürlich bei jeder ungeschickten
js-‘Lösung’ passieren kann ;o)

Die Kundenvorgabe deutet eher an, das Projekt nicht
fertiggestellt, sondern bereits so vergurkt ist, daß sich da
niemand mehr rantraut ;o)

Prinzipiell kann man natürlich auch über das DOM die
CSS-Eigenschaften ändern. Darauf wird es wohl hinauslaufen und
täte nichtmal die Zugänglichkeit beeinflussen, wenn das
fragliche Element aktuell bereits zugänglich ist. Wenn man aber
auch über das DOM kein position:fixed einfügen darf, wird das
wohl heikel werden, denn für solche Zwecke ist es ja gerade
gedacht. Noch besser wird es laufen, wenn das fragliche Objekt
gar einen Fragmentidentifizierer hat und das auch nicht geändert
werden darf, weil bereits alles so baufällig ist, daß es bereits
unter Denkmalschutz steht ;o)
Wie soll das eigentlich mit dem js funktionieren, wenn nichts
geändert werden darf - irgendwo muß man doch zumindest
hinschreiben, daß die externe js-Datei sich auf das angeguckte
Dokument bezieht…

[quote=“hoffmann”]Bei mir schweigt sie oder existiert nicht die ‘Community’, kann ich
also nicht nachvollziehen, …[/quote]Spiel’ mal ein wenig an der Konfiguration - ein deep-Link ist nicht möglich, da hier u.a. mit Cookies gearbeitet wird.
Irgendwann kommst Du zu den “Extras” -> auswählen und “weitere Extras” anklicken.
Dann siehst Du rechts unten die gelb umrandete Box, die ich meine.