If-Abfrage (iFrame abfragen)
Sebhe
- javascript
0 Gernot Back0 Sebhe
Hallo,
ich sitze hier gerade an meiner Webseite, deren Startseite sich auf http://www.definitionvonfett.goracer.de/FettesBrot/FB_neu/oben.php befindet. Wie ihr seht werden die einzelnen Rubriken im iFrame "_Inhalt" geöffnet.
Öffnet man nun eine Unterseite z.B. "FB Fanpage" -> "Team" öffnet sich diese Seite im oben genannte iFrame. Man kann diese Seite aber auch auf http://www.definitionvonfett.goracer.de/FettesBrot/FB_neu/team.php öffnen und so ohne das Frameset.
Ich habe mir nun überlegt und nachgeforscht und herausgefunden, dass es Frame-nachlade-Varianten gibt, die aber nicht wirklich bei mir funktioniert haben und für den User vielleicht auch etwas verwirrend sind, wenn da ein ganzes Frameset auftaucht, wenn er nur eine schnelle Information will. Daher habe ich mir überlegt, dass es ein einfacher Hinweis, wenn man die Seite nicht im Frameset öffnet, mit einem Link zu diesem, das beste wäre.
Man braucht meines Wissens nur Javascript dafür und dort muss man eine If-Abfrage erstellen. Mein Problem ist aber, dass ich einfach die Befehle nicht finde, die man verwenden muss für die Aussage:
Wenn Unterseite nicht im iFrame "_Inhalt"
dann schreibe hin "<div align="center"><font color="#FF0000" size="1" face="Verdana, Arial, Helvetica, sans-serif"><a href="http://www.definitionvonfett.goracer.de/FettesBrot/FB_neu/oben.php"><strong>Du
befindest dich auf einer Unterseite von www.definition-von-fett.de! Wenn du auf die Hauptseite möchtest, dann klicke hier!</strong></a> <br> <br> </font> </div>"
ansonsten "nichts"
Könntet ihr mir dabei bitte helfen. Ich freue mich auf eure Hilfe!
mfg
Sebhe
PS: Ich habe mir für mein Projekt extra diese Variante mit Frames ausgesucht, wenn ich auch einer Tabellenvariante mächtig gewesen wäre. Für mich und das weitere Team, dass hinter der Seite steht war aber diese Variante die durchaus einfach bessere.
Hallo Sebhe,
Man braucht meines Wissens nur Javascript dafür und dort muss man eine If-Abfrage erstellen. Mein Problem ist aber, dass ich einfach die Befehle nicht finde, die man verwenden muss für die Aussage:
Wenn Unterseite nicht im iFrame "_Inhalt"
den Anfangs-Unterstrich würde ich bei der Namensvergabe für den Iframe lieber weglassen, denn damit spricht man ja über Target-Attribute eher solche Fenster an, deren Namen man nicht unbedingt selbst vergeben hat (_top, _parent, _self, _blank), also:
if(self.name != "Inhalt")
Du kannst aber auch prüfen, ob sich das Dokument überhaupt in einem (I)Frame gleich welchen Namens befindet.
if(self == top)
dann schreibe hin "<div align="center"><font color="#FF0000" size="1" face="Verdana, Arial, Helvetica, sans-serif"><a href="http://www.definitionvonfett.goracer.de/FettesBrot/FB_neu/oben.php"><strong>Du
befindest dich auf einer Unterseite von www.definition-von-fett.de! Wenn du auf die Hauptseite möchtest, dann klicke hier!</strong></a> <br> <br> </font> </div>"
Gib deinem Hinweis-Element eine ID, z.B. id="meinHinweis", formatier es schön mit CSS, dann brauchst du auch weder Font- noch Strong-Elemente.
CSS brauchst du ohnehin für dieses Element, denn es soll ja erst einmal ausgeblendet sein display:none
.
Na ja und für den Fall, dass obige Bedingung erfüllt ist (such dir eine aus), setzt du die (Unter-)Eigenschaft style.display deines HinweisElements auf 'block', aber natürlich erst, wenn du sicher bist, dass das entsprechende Element auch bereits unsichtbar geladen ist.
Gruß Gernot
Danke! Herzlichesten Dank! Hast mir super weitergeholfen!