Seiten mit Menüs --- Frames --- Alternative?

Hallo allseits,

für die typische Webseite (oben irgendwelches Logos, links ein Menü, rechts ein Anzeigebereich) habe ich bisher immer mit Frames gearbeitet.

Das Menü besteht wie üblich aus einer Linkliste, die bei Klick im Anzeigefenster eine html Datei einblendet. So weit, so nett, so effizient, und so kein Problem: Suchmaschinenfestigkeit war kein Problem, da die Seiten (Intranet) nie von einer Suchmsschine erfasst werden müssen, und selbst wenn - es gibt simple und effiziente Workarounds.

Nun hat mir (HTML Gelegenheitstäter) ein Web-Programmier-Crack beim Fachsimpeln geflüstert, Frames seien problematisch und sowieso out. Nachvollziehbar begründet hat er das nicht. Ich habe daraufhin eine seiner Webseiten ein wenig näher angeschaut. Immerhin, das gebe ich zu, schaut das was er da macht recht schnieke aus. Im Qiellcode betrachtet packt mich allerdings das kalte Grausen: er macht das so, dass er das komplette Menü in jede Einzelseite einsetzt.

Von Hand macht er das vermutlich nicht, aber egal ob er das mit einem Generator schon beim Erstellen der Seiten macht oder das Menü per SSI oder Script serverseitig einbindet ich finde diese Umsetzung grausam ineffizient, da das komplette Menü mit jeder Webseite völlig sinnlos neu mitübertragen wird. Da er gleichzeitig das Menü mit grafischen Icons und einem fetten Hintergrundbild vollgepflastert hat macht - datenmengenmäßig gesehen - das Menüs deutlich mehr Last aus als der eigentliche Nutzinhalt.

Wenn Frames nun out sind … und ich die Effizienz meiner bisherigen Lösung nicht verlieren will … und die gängigen Browser funktionieren sollen … welche Alternative habe ich?

…Armin

Hallo Nimral,

alternativen zu Frames sind z.B. Menues, welche (serverseitig, wie du beschrieben hattest) bei jedem Aufruf neu uebertragen werden aber per CSS gestaltet werden. Der Code dafuer ist meistens recht schlank und evtl. benutzte Grafiken werden vom Browser gecacht, also nicht bei jedem Aufruf neu uebertragen.

Alternativ zu Frames koennte man noch mit AJAX (d.h. per Javascript nachgeladene Daten) arbeiten, welches allerdings aktiviertes Javascript voraussetzt und womit z.B. Bookmarks und die Vor- und Zururecknavigation per Browserbuttons nicht ganz einfach um zu setzen ist.

Allerdings sollte man Frames meiner Meinung nach nicht ersetzen nur weil einige Leute sagen das es out waehre. Wenn du und deine Nutzer damit zurecht kommen und (wie du sagtest) Suchmaschinen und aehnliches bei euch keine Rolle spielen - dann bleib dabei.

Gruss
Stefan

Von Hand macht er das vermutlich nicht, aber egal ob er das
mit einem Generator schon beim Erstellen der Seiten macht oder
das Menü per SSI oder Script serverseitig einbindet ich finde
diese Umsetzung grausam ineffizient, da das komplette Menü mit
jeder Webseite völlig sinnlos neu mitübertragen wird. Da er
gleichzeitig das Menü mit grafischen Icons und einem fetten
Hintergrundbild vollgepflastert hat macht - datenmengenmäßig
gesehen - das Menüs deutlich mehr Last aus als der eigentliche
Nutzinhalt.

Jetzt halten wir uns einmal vor Augen wie groß die paar autogenerierten Zeilen für das Menue groß sind, und dann wievleifach größer der Inhalt der Seite, Bilder und änliche verlinkte Geschichten sind. Außerdem liegt das ganze, wie gesagt auf Serverseite, ich brauche keine Javascript gezicke oder sogar Flash und ähnliches Gekröse installiert zu haben um das Menue anzeigen zu lassen. Die Prozessorzeit um das Menue mit CGI zu generieren ist lächerlich gering. Die Icons im Menu sind eh immer nur Links, außerdem sind sie nach dem ersten Aufruf im Cache des Browsers. Außerdem kann man mit der Methode die Breite der einzelnen Komponenten dynamisch anpassen, was alle Leute die nicht die auf so vielen Seiten ‚empfohlene‘ Auflösung benutzen.
Und jetzt reden wir nochmal über Effizienz…

Hallo Stefan!

Allerdings sollte man Frames meiner Meinung nach nicht
ersetzen nur weil einige Leute sagen das es out waehre. Wenn
du und deine Nutzer damit zurecht kommen und (wie du sagtest)
Suchmaschinen und aehnliches bei euch keine Rolle spielen -
dann bleib dabei.

Ihr seid mit W-W-W doch das beste Beispiel dafür, dass Suchmaschinen wie Google auch in Frames aufgeteilte Inhalte und diese sogar trotz über document.writeln() über Javascript eingebaute Frames wunderbar auffinden können, besser sogar noch als eure hauseigenen Suchfunktion!

Die Framesverteufelung ist also ein reines Ammenmärchen:

Wenn man es auf Suchmaschinenindizierung anlegt, kommt es hauptsächlich auf die Pflege von NOFRAMES- und NOSCRIPT-Bereichen, sprechende Dateinamen und die robots.txt an.

Webseitenbetreiber, die sehr viel Traffic auf ihren Seiten haben, wären schlecht beraten, auf Frames zu verzichten, da sie damit doch einiges an Traffic einsparen können.

Das ist auch allemal barriereärmer als die trafficsparende Alternative AJAX, die nur bei aktiviertem JavaScript funktioniert.

Übrigens: Das schwule Kontaktportal, über das ich vor drei Jahren meinen beruflichen Einstieg in die Webentwicklung gefunden habe und wahrscheinlich auch noch um ein Vielfaches mehr an &bdqu;Verkehr” (in jeglicher Hinsicht) zu bieten hat als W-W-W und XING zusammengenommen, setzt auch weiterhin auf Frames! Dass die einzelnen Unterseiten von GayRoyal.com über Google nicht auffindbar sind, ist dabei sogar Absicht im Sinne der Anonymität der Nutzer.

Gruß Gernot

Hallo Armin

Nun hat mir (HTML Gelegenheitstäter) ein Web-Programmier-Crack
beim Fachsimpeln geflüstert, Frames seien problematisch und
sowieso out. Nachvollziehbar begründet hat er das nicht.

Hat er wo gelesen und nachgeplappert. Es gibt gerade bei den Web-Entwicklern einen gewissen Dogmatismus, das sind oft so
„Kämpfer gegen das Böse in der Welt“.

Einen Nachteil haben die Frames noch: der Dateiname der *.htm wird, beim Klicken des Verweises, in der URL nicht angehängt. Ich habe versucht, das mit verwiesenen Ankern, immer oben in jedem Artikel, herbei zu führen, aber das klappt nicht.
Das heisst, du kannst einen Artikel nicht direkt verlinken.

Aber ich sage auch: wenn es euch nicht stört, was solls dann, :smile:

lG
Martin B