Lutz T.: Gibt es eine Art Refresh-Befehl für Frames?

Beitrag lesen

Ich lade mit dem Befehl
  parent.frames['Frame1'].location.href= ...
eine Seite in das Frame mit dem Namen 'Frame1', die ein Bildobjekt (img) mit dem Namen 'Bild' enthält. Wenn ich in der gleichen function dem Bildobjekt mit dem Befehl
  parent.frames['Frame1'].document['Bild'].src='1.jpg'
das Bild '1.jpg' in das img-Objekt laden will, passiert aber nichts. Erst wenn der Befehl (z.B. von einer anderen function) ein weiteres Mal ausgeführt wird, wird auch das Bild geladen. Das soll aber alles durch ein und dieselbe function ausgeführt werden.
Gibt es also so eine Art refresh-Befehl (in VisualBasic z.B. DoEvents)?

Hallo,

der Frame braucht eine gewisse Zeit zum Laden, wenn
parent.frames['Frame1'].location.href= ... und
parent.frames['Frame1'].document['Bild'].src='1.jpg'
unmittelbar nacheinander aufgerufen werden, wird das nicht gehen,
weil das Objekt parent.frames['Frame1'].document['Bild'] noch
nicht vorhanden ist. Du solltest also anstelle von
parent.frames['Frame1'].document['Bild'].src='1.jpg'
eine Funktion
LadeBild('Frame1','Bild','1.jpg')
aufrufen

function LadeBild(aFrame, aBild, aSrc)
{ if ((parent.frames[aFrame].document)&&
      (parent.frames[aFrame].document[aBild]))
    parent.frames[aFrame].document[aBild].src=aSrc;
  else setTimeout("LadeBild("+aFrame+", "+aBild+", "+aSrc+")",100);
}

die jede Zehntelsekunde guckt, ob das Objekt verfügbar ist und wenn ja das neue Bild zuweist.

MfG. Lutz T.