Olli: Funktionen und Bilder in anderen Frames per Javascript?

Hallo Allerseits,

da ich mich jetzt seit einer geschlagenen Woche jeden Abend mit diesem Sch**ß herumplage, stelle ich doch die Frage mal an dieser Stelle und hoffe, dass mir jemand helfen kann. Vielleicht geht es ja auch nicht, aber eigentlich war ich der Meinung, dass das einfach gehen muss.

Ich versuche in einem Frameset, bestehend aus drei Frames, auf den oberen Frame zuzugreifen und dort die Source eines Bildes zu tauschen, bzw. eine Funktion, die in dieser Seite steht anzusprechen.

Das Frameset dazu sieht wie folgt aus:

<frameset rows="103,*" border="0" framespacing="0" frameborder="no">
 <frame name="oben" src="top.htm" topmargin="0" leftmargin="0" marginwidth="0" marginheight="0" scrolling="no" frameborder="no" frameborder="0" noresize>
 <frameset cols="148,*" border="0" framespacing="0">
     <frame name="navi" src="navi.htm" topmargin="0" leftmargin="0" marginwidth="0" marginheight="0" scrolling="no" frameborder="no" frameborder="0" noresize>
     <frame name="content" src="content.htm" topmargin="0" leftmargin="0" marginwidth="0" marginheight="0" frameborder="no" frameborder="0" noresize>
 </frameset>
</frameset>

Das "image" im oberen Frame, das getauscht werden soll, liegt in einem DIV und der Code sieht folgendermassen aus:

<div style="position: absolute; top:10px; left:148px">
 <img name="picto" src="images/space.gif" width="48" height="49" border="0" alt="">
</div>

Im unteren Frame spreche ich es mit diesem Code an:

parent.oben.picto.src="images/space.gif";
Im IE klappt das wunderbar. Nur leider in keinem Netscape. Opera und Mozilla will ich erst garnicht testen.

Außerdem gibt es noch eine Funktion in dem oberen Frame, die ich gerne mit diesem Code anwerfen würde(klappt im IE auch wunderbar.

<body onload="parent.oben.ChangeNav();">

Unten gebe ich noch eine URL an wo ihr euch die Sache mal live ansehen könnt.

In tiefer Verzweiflung
Olli

  1. Der Netscape kennt das Attribut <img ""name"" nicht. Du solltest das Bild daher im Bezug zu seinem index innnerhalb des Fensters tauschen:

    parent.oben.document.images[indexnr].src=''

    sollte gehen

    1. Der Netscape kennt das Attribut <img ""name"" nicht.

      das glaub ich nicht ganz. Dein Fehler ist wohl eher der:

      parent.oben.picto.src="images/space.gif";

      da fehlt das document-Objekt!

      -->

      parent.oben.document.picto.src="images/space.gif";

      oder

      parent.oben.document.images[picto].src="images/space.gif";

      Funktion sollte eigentlich klappen. Weiß nicht wo da der Fehler ist.