Framecheck geht nicht bei firefox, aber bei IE ??
Benedict
- browser
Hi Leute, ich habe schon seit langem eine HTML basiert webpage, bei der sich im lauf der jahre viel inhalt angestaut hat, weshalb ich den umstieg zu wordpress o.ä. immer noch scheue. außerdem haben wir relativ viele links zu unterseiten, die sich auch gut über google finden lassen.
wir haben immer noch ein frameset (jaja, die gute alte schule) und ein kleines skript lädt auch brav das set nach, wenn man über google auf eine unterseite kommt. allerdings stelle ich jetzt fest, dass da bei firefox nicht geht - und bekomme nicht raus, warum nicht!!
Das skript auf der unterseite sieht so aus:
<SCRIPT language="JavaScript">
<!--
function checkFrameset() {
if(!parent.sidebar)
location.href="http://www.nightfrog.com/index.html?" + location.pathname;
}
//-->
</SCRIPT>
</head>
<body onLoad='checkFrameset()'>
und in der index.html so:
<SCRIPT language="JavaScript">
function checkFramecall() {
var Adressanhang=location.search;
if(Adressanhang)
frames.content.location.href=Adressanhang.substring(1,Adressanhang.length);
}
</SCRIPT>
<frameset ROWS="75,*,35" frameborder="no" BORDER="0" framespacing="0"onLoad="checkFramecall()">
was zur hölle stimmt da nicht? Oder ist firefox da irgendwie anders gestrickt?
1000 dank für eure hilfe!!
<frameset ROWS="75,*,35" frameborder="no" BORDER="0" framespacing="0"onLoad="checkFramecall()">
Ist das direkt aus der index kopiert? Incl. fehlendem Leerzeichen vor onload?
<frameset ROWS="75,*,35" frameborder="no" BORDER="0" framespacing="0"onLoad="checkFramecall()">
Ist das direkt aus der index kopiert? Incl. fehlendem Leerzeichen vor onload?
Oh! Shit! Ja - daran liegt es wohl??
<frameset ROWS="75,*,35" frameborder="no" BORDER="0" framespacing="0"onLoad="checkFramecall()">
Ist das direkt aus der index kopiert? Incl. fehlendem Leerzeichen vor onload?
Oh! Shit! Ja - daran liegt es wohl??
Mmmmh. gerade geändert. geht aber immer noch nicht ... ???
Hello,
if(!parent.sidebar)
das mag eine Bildungslücke von mir sein, aber sidebar ist kein Objekt, das sich auf meiner täglichen Gebrauchsliste wiederfindet.
Ich würde an deiner Stelle auf den Vergleich (self == top) ausweichen, also "bin ich das oberste Fenster".
MfG
Rouven
if(!parent.sidebar)
das mag eine Bildungslücke von mir sein, aber sidebar ist kein Objekt, das sich auf meiner täglichen Gebrauchsliste wiederfindet.
Mmmh... "sidebar" ist der name der html-datei die im set vorhanden sein muss.
Ich würde an deiner Stelle auf den Vergleich (self == top) ausweichen, also "bin ich das oberste Fenster".
meinst du so was wie:
if(!self.content)
Könnte das auch gehen?
MfG
Rouven
Vielen Dank! Benedict
Hello,
Mmmh... "sidebar" ist der name der html-datei die im set vorhanden sein
muss.
ach so, na das ändert die Sache. Ich sehe allerdings nicht, warum du die Lösung so einschränken möchtest, die von mir vorgeschlagene Abfrage ist der "gängige" Weg und allgemeingültig. Davon abgesehen, self.framename kann nur im Frameset eine korrekte Antwort ergeben, aber IMHO niemals in einem der Framebestandteile. Vgl. zum Themenkomplex auch SELFHTML: Anzeige in Frames verhindern
MfG
Rouven
Ah, ok, ich komme der Sache näher! VIelen Dank!
Ginge dann sowas bzw. warum geht das dann nicht??
<SCRIPT language="JavaScript">
<!--
function checkFrameset() {
if (top = self)
location.href="http://www.nightfrog.com/index.html?" + location.pathname;
}
//-->
</SCRIPT>
1000 Dank! B.
Hello,
if (top = self)
weil das, gemäß JavaScript-Syntax, der Versuch ist die Variable top mit dem Wert self zu belegen, was der Browser vermutlich vehement verweigert. Nutze stattdessen den Vergleichsoperator "==".
MfG
Rouven
if (top == self)
funktioniert!
Lieber Rouven, super, 1000 Dank, das war's!!