Heinz Geiger: Problem mit Opera

Beitrag lesen

Hallo Leutz,

Was im IE und im NN funktioniert, mag der Opera nicht. Es handelt sich um das DOM-Modell...  Opera erkennt zwar 'getElementById', 'getElementsByName' und 'getElementsByTagName', weist den damit angesprochenen Attributen auch Werte zu (in meinem Fall meiner Tabelle eine neue Höhe), aber es geschieht nichts sichtbares! Die Tabelle bleibt gleich groß!

Ebenso verhält es sich mit dem Ändern des Inhalts eines <iframes> per JavaScript: document.getElementById('iframeguenther').src='neueURL' erhält den Ziel-String der neuen URL als Wert (Bestätigung durch alert();), zeigt die neue Datei aber nicht an. Da selbst sämtliche SelfHTML-Beispiele (DOM) mit Opera nicht funktionieren, frage ich mal in die Runde wer in diesem Gebiet bereits Erfahrungen sammeln durfte.

Ach ja... ich habe Opera 6.05!

Herbert

hallo herbert,

also folgendes:

-der opera hat bezüglich window- und document-referenzen ganz eckelhafte fehler.
-habe mir auch schon die zähne daran ausgebissen!!!

-wenn du z.bsp. in ein frame eine seite mit location.href hineinladest, ist das document-objekt auf dieses frame nicht mehr gültig.
-du kannst zwar die eigenschaften und methoden darauf ohne fehlermeldung aufrufen aber es passiert wie in deinem fall nichts.
-die von opera haben einfach ihre hausaufgaben nicht gemacht.

-du kannst folgendes probieren.
-wenn du eine funktion verwendest übergib der funktion das window-objekt als string z.bsp "frames.inhalt".

-in der funktion verwandelst du das objekt vor der Verwendung mit eval() in ein gültiges aktuelles objekt:

function tu_was(objekt_win)
    {
        eval(objekt_win).document.getElementById....

.....
    }

-dies geht leider nicht mit fenstern.
-wenn du also im opera ein fenster mit javascript öffnest und im open-befehl die url mitgibst, kannst du über das zurückgelieferte window-objekt auf das document zugreifen.

-sobald du aber mit location.href eine seite hineinladest ist die referenz nicht mehr gültig.

gruss heinz