Andi: per dom elemente im iframe ändern

hallo,

ich hab mittlerweile das halbe www durchforste (ua dieses forum).
ich habe folgendes:

eine seite die ein iframe enthält. jetzt möchte ich per javascript die farbe des elements ändern. Bsp:

<iframe name="namedesiframes" src="iframe.html"></iframe>

<script language="JavaScript"><!--
// 1
document.getElementById('namedesiframes').getElementsByTagName('font')[0].style.color = 'red';

// 2
top.namedesiframes.document.getElementsByTagName('font')[0].style.color = 'red';

// 3
self[1].document.getElementsByTagName('font')[0].style.color = 'red';
//--></script>

ich versuche das iframe über seinen namen (oder id) anzusprechen.
Ich habe hier drei Möglichkeiten stehen , keine funktioniert. Im IE Fehlermeldung ("null oder kein Objekt"), im Mozilla keine Reaktion.

Wenn jemand eine Lösung postet bitte ausprobieren. Ich habe viele "Antworten" gefunden, die einfach falsch waren. Bin gespannt ob das hemand weiß. lg

  1. Hallo Andi,

    versuchs mal mit

    <iframe id="namedesiframes" name="namedesiframes" src="iframe.html"></iframe>

    Schöne Grüße

    Alex

  2. <iframe name="namedesiframes" src="iframe.html"></iframe>

    <script language="JavaScript"><!--

    Da fehlt das Type Attribut und das language Attribut ist veraltet.

    // 1
    document.getElementById('namedesiframes').getElementsByTagName('font')[0].style.color = 'red';

    Gibt es in dem Dokument eine ID mit dem Namen 'namedesiframes'?

    // 2
    top.namedesiframes.document.getElementsByTagName('font')[0].style.color = 'red';

    Das Fenster top hat ebenfall kein Element mit dem Namen 'namedesiframes'

    // 3
    self[1].document.getElementsByTagName('font')[0].style.color = 'red';
    //--></script>

    self ist kein Array, also ist folglich auch self[1] leer.

    ich versuche das iframe über seinen namen (oder id) anzusprechen.
    Ich habe hier drei Möglichkeiten stehen , keine funktioniert. Im IE Fehlermeldung ("null oder kein Objekt"), im Mozilla keine Reaktion.

    Du solltest deine Fehlerprüfung intensivieren.

    Also, du hast ein document dieses hat ein Frame mit dem Namen 'namedesiframes':

    if(document.frames['namedesiframes'])
    {
     tu_was();
    }
    else
    {
     alert("Es trat ein Fehler auf document.frames['namedesiframes']" existiert nicht);
    }

    Und bei tu_was kannst du versuchen, das document im iFrame anzusprechen und dann die entsprechenden Funktionen zu benutzen.

    Mein Tipp: Immer schrittweise vorgehen!

    Struppi.