Steve01: verschachtelte Frames über Namen ansprechen

Hallo zusammen,

habe zwei verschachtelte Framesets. Haupt-Frameset Nr.1 hat ein Frame mit Namen "main". Unter-Frameset Nr.2 hat ein Frame mit Namen "main1"

Die Anweisung:
x = parent["main"].document.body.scrollHeight;
klappt wunderbar, ebenfalls die Anweisung
x = parent["main"].main1.document.body.scrollHeight;
wenn Unter-Frameset Nr.2 geladen ist.

Wie kann ich aber die Anweisung verkürzen ???

1.) Abfrage ob Unter-Frameset Nr.2 geladen

if (parent.main.main1)
frameName = "main.main1";
else
frameName = main;

x = parent[frameName].document.body.scrollHeight;

Das klappt:

frameName = main;
x = parent[frameName].document.body.scrollHeight;

Das nicht:
frameName = "main.main1";
x = parent[frameName].document.body.scrollHeight;

Habe schon verschiedene Varianten ausprobiert, aber keine klappt. Wer hat einen Tip ?

Danke schon mal !

Steve01

  1. Hallo Steve,

    Das nicht:
    frameName = "main.main1";
    x = parent[frameName].document.body.scrollHeight;

    Natürlich nicht. Denn der Inhalt der eckicken Klammern bei parent muss der Name eines Objekt, das _direkt_ unter parent enthalten ist sein.

    Probier es doch mal so:

    (Unterscheidung)
    Fall 1: frameObject = parent["main"];
    Fall 2: frameObject = parent["main"].main1;

    (Zugriff)
    x = frameObject.document.body.scrollHeight;

    So weist Du einer Variable direkt das Objekt zu und dann kannst Du das Objekt selbst weiterverwenden.

    Grüße,

    Christian