Bertono: verweise in verschachtelten framesets

hallo zusammen

ich habe und brauche ein verschachteltes frameset
und möchte aus einem unteren frameset eine seite in einem oberen frameset ändern.

index =
<frameset rows="213,*" border="0" frameborder="0" framespacing="0">
  <frame name="oben" src="oben.html" scrolling="no" noresize>
  <frame name="fs1" src="fs1.html" scrolling="no" noresize>
</frameset>

fs1 =
<frameset rows="213,*" border="0" frameborder="0" framespacing="0">
  <frame name="nav_o" src="nav_o.html" scrolling="no" noresize>
  <frame name="fs2" src="fs2.html" scrolling="no" noresize>
</frameset>

fs2 =
<frameset rows="213,*" border="0" frameborder="0" framespacing="0">
  <frame name="content" src="start.html" scrolling="auto" noresize>
  <frame name="fs3" src="fs3.html" scrolling="no" noresize>
</frameset>

fs3 =
<frameset rows="213,*" border="0" frameborder="0" framespacing="0">
  <frame name="nav_u" src="nav_u.html" scrolling="no" noresize>
  <frame name="u1" src="u1.html" scrolling="no" noresize>
</frameset>

von der seite nav_u.html ändere ich mit target="" den content-frame und möchte auch die seite nav_o.html ändern, mit diesem javascript:
function FrameAendern ()
{
  parent.parent.parent.nav_o.location.href = u1.html;
}
habs auch mit top versucht :-(
und dem aufruf im link:
onclick="FrameAendern();"

bin verzweifelt. was mache ich falsch? hab das schon tzig-mal gemacht und immer hats gefunzt, ok da hatte ich auch andere framesets.

geht das mit dieser frameset konstellation nicht??

vielen dank im voraus für eure mühe!

gruss Bertono

  1. Moin,

    von der seite nav_u.html ändere ich mit target="" den content-frame und möchte auch die seite nav_o.html ändern, mit diesem javascript:
    function FrameAendern ()
    {
      parent.parent.parent.nav_o.location.href = u1.html;
    }
    habs auch mit top versucht :-(
    und dem aufruf im link:
    onclick="FrameAendern();"

    bin verzweifelt. was mache ich falsch? hab das schon tzig-mal gemacht und immer hats gefunzt, ok da hatte ich auch andere framesets.

    von parent.parent.parent hab ich nie gehört, will mir aber kein endgültiges Urteil über die Richtigkeit erlauben. Probiere es aber mal mit "parent.frames". Flunzt das ebenfalls nicht verwende die Zählweise:

    parent.frames[x].location.href = "Ziel.html";

    mit x = Nummer des Frames im gesamten window (ggf. ausprobieren!)

    Schönen Gruß,

    Mike

    1. hallo Mike

      danke für deine antwort
      das geht leider beides nicht, hab ich schon versucht :-)
      ich hab mir ein script aus Selfhtml in meine seite eingebaut das mir die mir die anzahl der framefenster ausgibt:
      <script type="text/javascript">
      for (var i = 0; i < parent.frames.length; i++)
        alert(parent.frames[i].name);
      </script>
      egal in welchen frame ich das rein schreibe, ich bekomme nur 2 zurück.

      da ich nicht möchte das sich meine frames, wenn ich das browserfenster kleiner mache, zusammen schieben, habe ich diese verschachtelung der framesets gewählt

      vielleicht hat jemand eine andere idee
      bin für alles offen und dankbar

      vielen dank im voraus für eure mühe
      gruss Bertono

      PS: @Mike
      die parent eigenschaft kannst du hier nachlesen:
      http://aktuell.de.selfhtml.org/tippstricks/javascript/fensterzugriff/

  2. Hallo Bertono,

    function FrameAendern ()
    {
      parent.parent.parent.nav_o.location.href = u1.html;
    }
    habs auch mit top versucht :-(

    Normalerweise sollte top funktionieren. Ich habe das Frameset nicht
    nachgebaut, aber so sollte es klappen (wenn ich das Frameset richtig
    deute und mich nicht täusche):

    top.fs1.nav_o.location.href = u1.html;

    Zum debuggen kannst du dir auch den Namen der Frames ausgeben
    lassen, vielleicht fällt dir dann irgendetwas auf:
    http://de.selfhtml.org/javascript/objekte/frames.htm (ganz unten auf der Seite)

    Wenn schon JavaScript benutzt wird, kann man doch alle Frames, die
    man ändern möchte, durch eine Funktion ändern lassen und nicht noch
    extra target benutzen. Vielleicht gibts auch einen Konflikt in
    Verbindung mit target, entferne es testweise...ist aber nur
    Spekulation, habe ich selbst noch nie erlebt, weil ich
    glücklicherweise schon sehr lange keine Frameseiten anfasssen mußte :-)

    Gruß
    André