Klaus B.: dynmisch Inhalt von <object>-tag ändern

Beitrag lesen

weiß jemand, ob es möglich ist, den Inhalt eines <object>-tags dynamisch zu ändern?

Antwort: Ja, es weiß jemand!
oder hattest Du folgendes erwartet:
Antwort: Ja, es geht!

Ist so was überhaupt technisch realisierbar?

schon besser:
Antwort siehe oben: Ja, es geht!

Soviel zur Präzision Deiner Fragen.

Leider funktioniert es in allen Browsern mal wieder anders.
Das Hauptproblem ist in der 'Mutterdatei' eine Referenz auf das Document bzw. Window im <object> -tag zu erhalten. Hierzu muß in den Tochterdateien (diejenigen, die in das <object> geladen werden) folgender Funktionsaufruf geschrieben werden:

if (!document.all || opera != -1) parent.sendObjRef(window, this.document);

Wie Du schon erkennen kannst, wird dies nur für Mozilla und Opera benötigt. Weiterhin impliziert dies natürlich, daß in der Mutterdatei eine Funktion stehen muß:

function sendObjRef(obj1, obj2)
        {
        myObj1=obj1;
        myObj2=obj2;
        }

myObj1 ist jetzt die Referenz auf das window-Objekt,
myObj2 ist die Referenz auf das document-Objekt.

Der dynamische Austausch der Dateien im <object> funktioniert dann für Mozilla, Opera und MSIE folgendermaßen:

if (!document.all) myObj1.location.href = loadFile;
         else if (opera != -1) myObj2.location.href = loadFile;
         else document.getElementById("f1").object.location.href = loadFile;

f1 ist hier die ID des <object>-tags

MfG
Klaus