JavaScript-Frameworks verwenden
Als wir über das Fensterobjekt sprachen, erwähnten wir, dass eine Webseite innerhalb eines Frames auch ein Fensterobjekt ist, das heißt, ein Frame-Objekt ist auch ein Fensterobjekt. Im einfachsten Sinne belegt jede HTML-Datei ein Fensterobjekt, einschließlich der Webseite, die den Frame definiert (die „Frame-Seite“). Im IE ist der mit dem Tag „
Wenn das mit window.frameName angegebene Fensterobjekt auch eine Frame-Webseite ist, dann ist die Methode zur Referenzierung ihres Frames: window.frameName.subFrameName. Und so weiter.
Es ist zu beachten, dass unabhängig davon, wo auf das „Fenster“-Objekt verwiesen wird, immer das „aktuelle“ Fensterobjekt zurückgegeben wird. Wenn Sie auf andere Fensterobjekte zugreifen möchten, müssen Sie die Attribute parent und top verwenden. parent bezieht sich auf das „übergeordnete“ Fensterobjekt, das die Frame-Webseite ist, die das aktuelle Fensterobjekt enthält; top bezieht sich auf das Fensterobjekt oben im Fenster.
Achten Sie bei der Verwendung von Frameworks auch genau auf die in Ihrem JavaScript definierten globalen Variablen und benutzerdefinierten Funktionen. Sie alle haben ihr eigenes Fensterobjekt. Um globale Variablen oder benutzerdefinierte Funktionen in anderen Frameworks zu referenzieren, müssen Sie die lästige Methode „Fensterobjekt.Frame-Objekt [.Frame-Objekt...].Globale Variablen oder benutzerdefinierte Funktionen“ verwenden.
Das obige Problem wird beim Verbindungsaufbau oft ignoriert: Wenn in
ein Standardzielfenster (Übersicht über die Frame-Programmierung
Eine HTML-Seite kann einen oder mehrere Unterframes haben, die mit
1. Verweis vom übergeordneten Frame auf den untergeordneten Frame
Wenn Sie die oben genannten Prinzipien kennen, ist es sehr einfach, den untergeordneten Frame vom übergeordneten Frame aus zu referenzieren, d. h.: 2. Referenz vom untergeordneten Rahmen zum übergeordneten Rahmen
Jedes Fensterobjekt verfügt über ein übergeordnetes Attribut, das seinen übergeordneten Rahmen darstellt. Wenn der Frame bereits ein Frame der obersten Ebene ist, stellt window.parent auch den Frame selbst dar.
3. Referenzen zwischen Geschwisterframes
Wenn zwei Frames Unterframes desselben Frames sind, werden sie Geschwisterframes genannt und können über den übergeordneten Frame aufeinander verweisen. Eine Seite enthält beispielsweise zwei Unterframes:
Ändern Sie die Ladeseite des Rahmens
Der Verweis auf den Rahmen ist ein Verweis auf das Fensterobjekt. Mithilfe des Standortattributs des Fensterobjekts können Sie die Navigation des Rahmens ändern, zum Beispiel:
JavaScript-Variablen und -Funktionen in anderen Frames referenzieren
Bevor wir die Technik des Referenzierens von JavaScript-Variablen und -Funktionen in anderen Frames vorstellen, schauen wir uns zunächst den folgenden Code an:
window.frames[ "frameName"];
window.frames.frameName
window.frames[index]
Dabei kann das Wort „window“ auch durch „self“ ersetzt oder weggelassen werden , die folgende Schreibweise ist äquivalent:
self.frames ["frameName"]
self.frames[0]
frames[0]
frameName
Jeder Frame entspricht einer HTML-Seite, also Dieser Frame ist auch ein unabhängiges Browserfenster, das über alle Eigenschaften des Fensters verfügt. Die sogenannte Referenz auf den Frame ist auch eine Referenz auf das Fensterobjekt. Mit diesem Fensterobjekt können Sie die darin enthaltenen Seiten problemlos bedienen, z. B. mithilfe des window.document-Objekts Daten auf die Seite schreiben, mithilfe der window.location-Eigenschaft die Seite im Frame ändern usw.
Im Folgenden werden die gegenseitigen Verweise zwischen Frames auf verschiedenen Ebenen vorgestellt:
window.frames["frameName"];
Auf diese Weise wird auf den Unterrahmen mit dem Namen „frameName“ auf der Seite verwiesen. Wenn Sie einen Unterrahmen innerhalb eines Unterrahmens referenzieren möchten, kann der referenzierte Rahmen je nach Art des Fensterobjekts wie folgt implementiert werden:
window.frames["frameName"].frames["frameName2"];
Auf diese Weise wird referenziert. Wenn es um das Sub-Framework der zweiten Ebene usw. geht, kann die Referenz auf mehrschichtige Frameworks erreicht werden.