Frameset + Framebreaker + Opera = Problem?
Stefan Link
- javascript
Hallo community,
folgendes Problem: ich habe eine Seite, die in ein bestehendes frameset geladen wird, das sprengen und selbst ein eigenes frameset aufbauen soll. Das geht überall in allen Browsern nur im Opera nicht. Dieser meldet:
-----------------------------------------------------------------
Inline script thread
Error:
name: ReferenceError
message: Security error: attempted to read protected variable
https://81.209.167.39/Pages/Hauptseiten/Hauptseiten_main.php?vid=00c843656ad3bcce19fd381e30ce95e4
Event thread: onload
Error:
name: TypeError
message: Statement on line 1: Expression evaluated to null or undefined and is not convertible to Object: parent.Ressourcen
Backtrace:
In unknown script
parent.Ressourcen.location = "../Hauptseiten/Hauptseiten_ressourcen.php?vid=00c843656ad3bcce19fd381e30ce95e4";
At unknown location
{event handler trampoline}
---------------------------------------------------------------------
Ich werde da leider nicht ganz schlau draus, ausser dass er mit den srcs der frames ein Problem hat. Vor kurzem hatten wir den Parameter vid noch nicht an den srcs, da ging das noch. Hier der entsprechende Seitencode:
---------------------------------------------------------------------
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html lang="de">
<head>
<script type="text/javascript">
if(top!= self)
top.location=self.location;
</script>
</head>
<!-- Definition der Frames -->
<frameset cols="190,*,100" frameborder="0" border="0">
<frame name="Menue" src="Pages/Hauptseiten/Hauptseiten_menue.php?vid=00c843656ad3bcce19fd381e30ce95e4" noresize scrolling="no" marginwidth="0" marginheight="0">
<frameset rows="50,*" frameborder="0" border="0">
<frameset cols="30,*,30" frameborder="0" border="0">
<frame name="Linksoben" src="Pages/Hauptseiten/Hauptseiten_linksoben.php?vid=00c843656ad3bcce19fd381e30ce95e4" noresize scrolling="no">
<frame name="Head" src="Pages/Hauptseiten/Hauptseiten_head_musik.php?vid=00c843656ad3bcce19fd381e30ce95e4" noresize scrolling="no" marginwidth="0" marginheight="0">
<frame name="Rechtsoben" src="Pages/Hauptseiten/Hauptseiten_rechtsoben.php?vid=00c843656ad3bcce19fd381e30ce95e4" noresize scrolling="no" marginwidth="0" marginheight="0">
</frameset>
<frameset cols="30,*,30" frameborder="0" border="0">
<frame name="Links" src="Pages/Hauptseiten/Hauptseiten_links.php?vid=00c843656ad3bcce19fd381e30ce95e4" noresize scrolling="no">
<frame name="Main" src="Pages/Hauptseiten/Hauptseiten_main.php?vid=00c843656ad3bcce19fd381e30ce95e4"" marginwidth="0" marginheight="0">
<frame name="Rechts" src="Pages/Hauptseiten/Hauptseiten_rechts.php?vid=00c843656ad3bcce19fd381e30ce95e4" noresize scrolling="no">
</frameset>
</frameset>
<frame name="Ressourcen" src="Pages/Hauptseiten/Hauptseiten_ressourcen.php?vid=00c843656ad3bcce19fd381e30ce95e4" noresize scrolling="no" marginwidth="0" marginheight="0">
<noframes>
<body>
Leider unterstützt ihr Browser keine Frames. Bitte benutzen Sie einen frame-fähigen Browser, um diese Präsenz sehen zu können!
</body>
</noframes>
</frameset>
</html>
------------------------------------------------------------------
Kann mir hier jemand helfen?
Herzlichen Dank im Voraus!
Grüße
Stefan
Hallo,
Kann mir hier jemand helfen?
Ja, wenn Du ein wenig weiter unten geschaut hättest, hättest Du die Lösung bereits:
https://forum.selfhtml.org/?t=104535&m=644742
Ich persönlich nutz immer:
if (self.location != top.location){
top.location = self.location;
}
Das funktioniert mit Opera 7.54 - 8.0b bei mir
Mit freundlichem Gruß
Micha
Habe ich! Leider geht das eben bei mir nicht. Da kommt eben auch die oben gepostete Fehlermeldung :(
Hi,
Ja, wenn Du ein wenig weiter unten geschaut hättest, hättest Du die Lösung bereits:
https://forum.selfhtml.org/?t=104535&m=644742
warum gibst Du nicht direkt https://forum.selfhtml.org/?t=104535&m=644750 an?
Ich persönlich nutz immer:
if (self.location != top.location){
top.location = self.location;
}Das funktioniert mit Opera 7.54 - 8.0b bei mir
und Du bekommst keine Zugriffsverweigerung, wenn top auf einer fremden Domain liegt?
top.frames.length kann AFAIK auch dann noch abgefragt werden.
freundliche Grüße
Ingo
Hallo Ingo,
https://forum.selfhtml.org/?t=104535&m=644742
warum gibst Du nicht direkt »» https://forum.selfhtml.org/?t=104535&m=644750 an?
Habe ich doch?!
und Du bekommst keine Zugriffsverweigerung, wenn top auf einer fremden Domain liegt?
Nein, warum sollte ich? Aber probiers aus http://www.derletztekick.de
top.frames.length kann AFAIK auch dann noch abgefragt werden.
Warum sollte ich? Die Seite soll in keinem Frame geladen werden, somit kann sie nur das Hauptfenster selbst sein - ist es anders, dann liegt sie bereits in einem Frame...
Mit freundlichem Gruß
Micha
hi,
du hast bereits in https://forum.selfhtml.org/?t=104535&m=644742 zu deinem problem gefragt.
bitte lies </faq/#Q-11>, und unterlasse solche doppelpostings.
gruß,
wahsaga
Nun, aus meiner sicht bezog sich das erste Problem auf den Framebreaker an sich, das zweite in Kombination mit einem src-link + Parameter, aber gut. Dann entschuldige ich mich für den Doppelpost und suche weiter nach der Lösung, da die angegebenen Lösungen bei mir leider nicht tun.
Grüße