Da ich unterwegs immer Beiträge erstelle und offline dazu sein muss, kommt eine reine PHP Lösung leider nicht in Frage. Sorry
Beiträge von Blackbloodies
-
-
Hallo erstmal ,
ich habe eine Website erstellt und dazu ein paar Fragen. Vllt. könnte mir hier der ein oder andere "HTML / Frame" Experte weiterhelfen *hoff*
Zum besseren Verständnis erklär ichs euch erst einmal:
Ich betreibe eine Retro-Gamingseite [ http://www.pcgn.de ] in einem IFRAME (Index.html; width=100%, height=350%), welches wiederrum ein Frameset bestehend aus Top Bereich und einem dreiteiligen unterem Frameset bestehend aus einer linken und rechten Navigationsleiste sowie einem mitleren Inhaltsbereich lädt, so dass praktisch nicht ersichtlich ist, das es sich um Frames handelt (ausser z.B. wenn man in der Navigationsleiste auf Lösungen und dann den Buchstaben S klickt). (Ausserdem entstehen noch 4 variable Seitenränder -> 2 links und rechts vom oberen Top Bereich, und 2 links und rechts neben den Beiden Navigationsleisten)
Insgesamt ergeben sich hier 3 auf Dauer mich recht störende Eigenschaften:
1.) Wenn man auf einen Link zum Beispiel von einem Testbericht klickt, der z.B. dementsprechend lang und umfrangreich ist wo z.B. unten dann am Ende des Berichtes steht "weiter zu Seite 2" (Beispiel Reviews -> W -> Warcraft 3 [oder auch direkt auf der Startseite den Warcraft 3 Test auswählen]), dann wechselt er zu dem Dokument, bleibt aber auf der Seitenhöhe stehen, spricht, springt nicht zum Anfang des oberen Bereiches (auf Grund des eingegliederten Frames nehme ich mal an) hoch.
Meine Frage:
Kann man irgendwie das ein"htm~ellen" / eincoden, z.B. vllt. durch eine Verankerung (ID Tag oder sowas) (hab schon diverses probiert bisher, leider ohne Erfolg), so das er direkt wieder zum Oberen Bereich springt ??
Falls Unklarheiten sind, probiert es ruhig einmal kurz anhand des Warcraft 3 Beispiels aus. "Weiter zu Seite 2" Link, dann seht ihr wie ich das genau meine.2.) Auf Grund dessen, dass ich am Anfang im IFRAME (index.html) den Wert Height=350% (welcher zur Vermeidung des SCOLLBALKENs im Inhalt (Mitte des 2. Framesets) dient), eingestellt hab bleibt die Seite zwar schön Scrollbalkenlos in der Mitte, jedoch leider immer mit großen unterem Leeren Bereich, was schon etwas doof ist (mal nett ausgedrückt), wenn es nur wenig Inhalt auf der Seite gibt. Als Vergleich könnt ihr hier z.B. einmal die Sektion "Downloads", langer leerer Bereich und die Sektion Lösungen "A", fast bis zum Ende ausgelagert, betrachten.
Meine Frage:
Gibt es eine Möglichkeit das sich der äußere Scrollbalken dynamisch der Länge des mittleren Inhaltes anpasst ?
Derzeit ist es so (siehe dazu Lösungen "S"), dass wenn eine Seite zu lang sein sollte, ein mittlerer Scrollbalken des Inhalts entsteht und sonst wie gesagt ein unterer leerer Bereich unterhalb des Inhalts und der Navigationsleisten 1&2 auf Grund der Height 350% Einstellung entsteht), Es ist quasi also immer die Gleiche Länge des Gesamt eingegliederten IFRAMES vorhanden.3.) Zur Vermeidung, dass bei Suchmaschinenfunden, der mittlere Inhalt als einzelner Inhalt ohne Frameset dargestellt wird, hab ich ein Javascript eingefügt, welches überprüft ob der Inhalt ohne Frame geladen wurde. Sollte dieses der Fall sein, lädt er den Inhalt automatisch ins Frameset (könnt ihr derzeit überprüfen wenn ich z.B. bei Lösungen die Seiten A, B, C und D versucht im einzelnen Tab zu öffnen.)
Hier das Script der Inhaltsseiten (im Body):
<SCRIPT LANGUAGE="javascript">
var mychecker=parent.parent.framechecker;if (mychecker == "frames")
{}
else
{
document.write("Page opened outside of its frame - if page is not reloaded please <a href='../../pcg-l-a.html'>click here</a>.");
parent.location.href = '../../pcg-l-a.html';}
</SCRIPT>und hier das Überprüfungscode der Framesetseite (im <Head>:
<SCRIPT LANGUAGE="javascript">
var framechecker="frames";
</SCRIPT>Um dann genau diesen Inhalt in das Frameset zu laden, muss ich also für jede Inhaltsseite
eine weiter .html FRAMESET Datei anlegen (bei meinen sehr vielen HTML Seiten
also sehr viel Aufwand leider) (Beispiel für Lösungen -> A = Eine Framesetseite extra
erstellen, welche diesen Inhalt dann eingeliedert Bsp. f-loesungen-a.html), sollte
ich das nicht machen, so wird immer die erste Newsseite im Frameset geladen, so
das sich der Suchmaschinenbeitragsfinder immer durch die ganze Seite klicken muss,
was sehr umständlich sein kann.
Meine Frage Nr 3: Gibt es hier eine JavaScript-Code Erweiterung (entweder im FrameSet oder in der Inhaltsdatei oder in beiden von mir aus auch :P), welche ermöglicht, dass nicht für jede Inhaltsdatei
eine neue Framesetdatei erstellt werden muss, sondern es automatisch in die erste Frameset .html
Datei eingegliedert wird ??Bei Lösungsvorschlägen (wenn es geht bitte ), so dass ich nicht die komplette Seiten umschreiben müsste, denn das Frameset und die eigentliche Grundstruktur soll bestehen bleiben, da sie bis auf die 2,3 kleine Ungereimtheiten, sonst eigentlich sehr gut funktioniert.
Besonders die 2. Frage liegt mir auf dem Herzen
Falls ihr weitere Informationen benötigt, gerne einmal nachfragen oder einfach die Beispiele kurz auf der Seite zum Verständnis aufrufen. Hoffe mal ich hab es möglichst gut und fehlerfrei erläutern können.
Großes Dankeschön schonmal im Vorraus