Bruno dá Gizmo: Funktion aus iframe ausführen

Weiß jemand wie man aus einem iframe eine JavaScript-Funktion in einem der Frames aus dem Frameset ausführt?

Kurz zur Situation:
Die Page ist in zwei Frames geteilt - einen oberen (menu) und dem Hauptframe (main). Im Haupframe ist die besagt Funktion enthalten und soll auch dort ausgeführt werden. In dem Hauptframes befinden sich neben anderem Inhalt noch einige Inline-Frames.

Funktion aus dem selben Frame (main)ausführen - sowieso kein Problem
Funktion aus dem oberen (head) Frame ausführen - funktioniert: parent.main.funktionsname();

Wenn ich jedoch aus einem der iframes über das parent-Objekt zugreifen will, dann bekomme ich nur die Fehlermeldung "Objekt nicht gefunden" (oder so ähnlich)...

Es wäre mir wirklich sehr geholfen wenn mir da jemand sagen könnte wie ich da vorgehen muss damit mein Vorhaben funktioniert. Habe da leider schon mehrere Anläufge gestartet - jedoch ohne Erfolg. Auch bei zahlreichen Recherchen bin ich auf nichts hilfreiches gestoßen : (

Vielen Dank im Voraus!
Bruno

  1. Hallo!

    Funktion aus dem selben Frame (main)ausführen - sowieso kein Problem
    Funktion aus dem oberen (head) Frame ausführen - funktioniert: parent.main.funktionsname();

    Wenn ich jedoch aus einem der iframes über das parent-Objekt zugreifen will, dann bekomme ich nur die Fehlermeldung "Objekt nicht gefunden" (oder so ähnlich)...

    Ich hatte ein ähnliches Problem bei einem Projekt mit iFrames. Ich kann mich aber nicht mehr erinnern, bei welchem es war und was genau. Ich wollte aber etwas im iFrame ansprechen.

    Ich meine, ein iFrame ist ein Frame in einer Seite. Du müßtest also aus dem iFrame heraus in die Seite gehen, und dann aufs Frameset.

    Das sollte ungefähr so aussehen:

    parent.nameDesFramesinDemDasIFrameTst.parent.main.funktionsname();

    André Laugks

    1. Hallo André,
      danke für deine Antwort

      parent.nameDesFramesinDemDasIFrameTst.parent.main.funktionsname();

      Der Frame befindet sich im Frame "main", das würde also so aussehen:
      parent.main.parent.main.funktionsname();

      Um das ganze zu veranschaulichen, habe ich bei einem Screenshot die Frames eingezeichnet:
      http://www.karadza.net/projekte/ba%5Fv0.4/images/bildarchiv_frames.jpg
      bzw. wenn es interessiert, kann sich das Ganze auch ansehen:
      http://www.karadza.net/projekte/ba%5Fv0.4/login.asp
      Benutzer: demo; Passwort: demo

      Aus dem iframe (quelle0) möchte ich eben ein weiteres Fenster (div mit iframe) auf der Hauptebene (main) öffnen... das muss doch irgendwie möglich sein!?

      1. Hallo!

        Aus dem iframe (quelle0) möchte ich eben ein weiteres Fenster (div mit iframe) auf der Hauptebene (main) öffnen... das muss doch irgendwie möglich sein!?

        Ich kann hier kein Frame mit dem Namen "main" sehen?!

          
        <frameset framespacing="0" border="0" frameborder="0" rows="85,*">  
         <frame name="Menu" scrolling="no" noresize target="Inhalt" src="fr_menu.asp" marginwidth="0" marginheight="0">  
         <frameset cols="*">  
          <frame id="bildarchiv" name="bildarchiv" src="main.asp" target="_self" scrolling="no" noresize marginwidth="1" marginheight="1">  
         </frameset>  
         <noframes>  
         <body bgcolor="#666666">  
          
         <p>Diese Seite verwendet Frames. Frames werden von Ihrem Browser aber nicht  
         unterstützt.</p>  
          
         </body>  
         </noframes>  
        </frameset>  
        
        

        André Laugks

        --
        Die Frau geht, die Hilti bleibt!
        1. Ich kann hier kein Frame mit dem Namen "main" sehen?!

          Habe das vorübergehend geändert... dachte das "main" evt. ein reserviertes Schlüßelwort ist, und es vielleicht deswegen nicht geht... aber mit "bildarchiv" ändert sich nichts an der Sache. Sorry, eine Unachtsamkeit von mir...

          wäre aber dennoch sehr froh wenn mir hier jemand weiterhelfen könnte... mitlerweile ist das Projekt schon sehr fortgeschritten, nur dieses Problem lässt sich leider nicht lösen und hält mich inzwischen sehr auf : (

          Dennoch danke! : )
          Bruno