NTcomputer: Funktion in iframe aufrufen

Hallo,
ich habe ein Hauptfenster mit einem iframe:
<iframe id='textframe' src='news.php'>

Jetzt möchte ich in diesem iframe eine Funktion aufrufen, Quelltext des frames:

<script language="JavaScript">
<!--
function setopac(opac) {
outdiv1.style.filter="alpha(opacity:" + opac + ")";
}
//-->
</script>

<div id="outdiv1" style="filter:alpha(opacity:0)">
[...]
</div>

Diese Funktion will ich jetzt über das Hauptfenster aufrufen, z.B. so:
textframe.setopac(opac5);

IE gibt mir aber immer zurück, dass das Objekt die Eigenschaft oder Methode nicht unterstützt!
Was ist daran falsch?

  1. Optional würde es auch mit einem direkten Aufruf von:
    outdiv1.style.filter
    aus dem Hauptfenster gehen...

  2. Hallo,

    Diese Funktion will ich jetzt über das Hauptfenster aufrufen, z.B. so:
    textframe.setopac(opac5);

    textframe ist das iframe-Elementobjekt, und das hat selbstverständlich keine Methode namens setopac. Die Methode hängt am window-Objekt des Iframes. Daran kommst du ausgehend vom iframe-Elementobjekt über die Eigenschaft contentWindow:

    textframe.contentWindow.setopac(...);

    Übrigens ist nur im IE der Zugriff auf Elemente mit IDs über gleichlautende globale Variablen möglich.

    Mathias

    1. Hi,

      Übrigens ist nur im IE der Zugriff auf Elemente mit IDs über gleichlautende globale Variablen möglich.

      <spitzfindig> Nein, in anderen Browsern auch - nur muss man diese gleichlautende globale Variable dort erst mal erzeugen :-) </spitzfindig>

      MfG ChrisB

      --
      "The Internet: Technological marvel of marvels - but if you don't know *what* you're lookin' for on the Internet, it is nothing but a time-sucking vortex from hell."
    2. textframe ist das iframe-Elementobjekt, und das hat selbstverständlich keine Methode namens setopac. Die Methode hängt am window-Objekt des Iframes. Daran kommst du ausgehend vom iframe-Elementobjekt über die Eigenschaft contentWindow:

      textframe.contentWindow.setopac(...);

      Ersteinmal danke für die Antwort!
      Aber gebracht hat es leider nichts.
      Der IE zeigt jetzt "textframe.contentWindow ist Null oder kein Objekt" an..

      1. Hallo,

        Der IE zeigt jetzt "textframe.contentWindow ist Null oder kein Objekt" an..

        Was ist textframe? > Ausgeben lassen. Sollte das iframe-Elementobjekt sein (z.B. .nodeName ist "IFRAME").

        contentWindow ist nach dem erfolgreichen Laden des Dokuments im Iframe verfügbar > Code erst bei bzw. nach window.onload bzw. textframe.onload ausführen.

        Dann sollte es klappen.

        Mathias