Klaus Roeller: neues Frameset laden

Beitrag lesen

versuch es doch folgendermaßen:

<script>
   function error() { top.location.href="http://musikkapelle.obermarchtal.com/index.html"; }
   window.onerror = 'error()';
   if (top.location.host.indexOf('musikkapelle.obermarchtal.com') < 0) { error(); }
</script>

Das onerror ist wichtig, weil aus Sicherheitsgründen (öhm...) nicht auf top.location zugegriffen werden kann, wenn sich der Hostname von dem des zugreifenden Dokuments unterscheidet. So wird die Seite niemals in einem fremden Frameset angezeigt. Ist das Problem damit gelöst? Wenn nicht, dann beschreibe es bitte noch mal genauer... :-)

Cheatah

Danke dafür!

Aber es wird bei mir dadurch nur eine Fehlermeldung mit der richtigen (meiner) URL eingeblendet. Aber im Browserfenster steht immer noch die falsche URL.

Ich habe hier mal ein Beispiel für ein Frameset, aus dem ich einen Link zu unserer Seite habe.

<frameset rows="100%,*" framecolor="#000000">
    <frame src="http://home.t-online.de/home/juedo/1.htm" name="die_Seite">
</frameset>

Wenn meine Seite aus diesem Frameset heraus aufgerufen wird, dann greift mein Skript nicht, weil auf dem Bildschirm ja gar keine Frames zu sehen sind. Dieses Frameset dient allein dazu, die angegebene Seite unter dem Namen http://obermarchtal.com/kirche anzuzeigen. Aber alle Seiten die jetzt per Link aus dieser Seite heraus aufgerufen werden nun aber auch unter diesem Namen angezeigt. Ich kann bei meiner Seite dann nicht einfach hingehen, rechte Maustaste, "in neuem Fenster öffnen" weil ich auf meiner Seite mehrere Frames habe.

Oder hat mir jemand eine andere Lösung dafür, dass ich die Seite: http://home.t-online.de/home/juedo/1.htm unter dem Namen: http://obermarchtal.com/kirche/ anzeigen kann? (Ich hab unserem Pfarrer nämlich versprochen, dass seine Seiten unter http://obermarchtal.com/kirche zu erreichen sein wird, und jetzt erscheinen alle Seiten, die man aus seiner Seite per Link erreichen kann unter diesem Namen)

Bei einem anderen Frameset, mit richtigen (sichtbaren) Spalten (oder so) greift mein Skript ja. Wenn aus dieser Seite heraus jetzt meine Seite aufgerufen wird, dann erscheint sie (so wie es sein sollte) unter meinem Namen, und füllt den ganzen Bildschirm aus.

Beispiel:
<FRAMESET COLS="150,*" Border=0>
<FRAME SRC="navi.htm" NAME="links">
  <FRAMESET ROWS="45,*">
  <FRAME SRC="kopf.htm" NAME="logo">
  <FRAME SRC="homepage.htm" NAME="main">
</FRAMESET>
</FRAMESET>

Danke für eure Hilfe!

Gruß,
Klaus Roeller