• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Durch Frames auf Objekt zugreifen

kuniberto

Neues Mitglied
Hallo.

Ich möchte auf Objekte innerhalb von veralteten frameset zugreifen....

test.html
Code:
<!DOCTYPE html>
<html>
   <frameset name="frames" rows="50%,50%">
       <frame name="frame1" src="test1.html" />
       <frame name="frame2" src="test1.html" />
   </frameset>
</html>

test1.html
Code:
<!DOCTYPE html>
<html>
   <body>
       <div id="test">TEST</div>
   </body>
</html>

Nun habe ich folgenden Code ausprobiert:

Code:
var frms = document.getElementsByTagName( 'frame' );
var frm1 = frms[ 0 ], frm2  = frms[ 1 ]; // das funktioniert noch
var test = frm1.getElementsByTagName( 'div' ); // aber das klappt irgendwie nicht / getById get leider auch nicht
alert( test.length ); // Hier müsste eigentlich eine 1 rauskommen, so dass ich mit dem Element arbeiten kann.
Am Ende wollte ich hier auf das innerHTML ("TEST") zugreifen und vielleicht auch verändern.

Hat jemand zufällig eine Idee, wie ich auf das Objekt zugreifen könnte? Und auch evtl. dann noch zu bearbeiten?

Ich weiß natürlich framesets sind total veraltet und absolut nicht mehr zeitgemäß. Trotzdem möchte ich nur eine Kleinigkeit "verbessern" eine totale Umstellung ist leider zu aufwendig und eigentlich unmöglich.

Ich danke für jeden Tipp und jede Idee. Danke im voraus :-)
 
Danke Sempervivum für den Hinweis.

Code:
var frm1 = parent.frames[ 0 ], frm2  = parent.frames[ 1 ];
var test = frm1.document.getElementsByTagName( 'div' );
// alert( test.length ); // 1
var t = test[ 0 ];
alert( t.innerHTML ); // Ergibt "TEST"
t.innerHTML = 'TEST2'; // Ändern brav den Inhalt :-)

Klappt. Nochmals Danke :-)
Nur schade, dass man diesen kleinen Umweg gehen muss.
 
Zurück
Oben