[an error occurred while processing this directive]

Formulare ganz einfach erstellen

Onlineformulare mit wenigen Mausklicks einfach und bequem selbst gemacht

Hier klicken und mehr erfahren

Programme von Machern für Macher

Die Grammiweb-Produktreihe hält viele praktische Tools für Webdesigner bereit

Hier klicken und mehr erfahren

[an error occurred while processing this directive]

(Stand: 25.11.24, Adresse: http://www.grammiweb.de/anleitungen/ka_2frames.shtml)

 

2 Frames gleichzeitig ändern

Sollen sich innerhalb eines Framesets beim Anklicken eines Hyperlinks gleich zwei Frames verändern, kommt man mit einfachem HTML nicht weiter - JavaScript muss her. Aber wie geht das?

Zuerst einmal muss ein Frameset erstellt werden. Für unser Beispiel haben wir die meistverbreitete Variante gewählt: Links die Navigation, rechts den Anzeigebereich und über diesen beiden Elementen eine Kopfzeile, in der beispielsweise ein Werbebanner Platz finden könnte.

So sieht das Frameset aus

Der Quelltext hierzu lautet:

<html>
<head>
</head>
<frameset framespacing="0" border="false" frameborder="0" rows="70,*">
<frame name="kopfzeile" src="kopf.htm">
<frameset cols="150,*">
<frame name="navigation" src="navi.htm">
<frame name="anzeige" src="anzeige.htm">
</frameset>
</frameset>
</html>

In das erstellte Frameset werden die Seiten "kopf.htm" (für die Kopfzeile, in der Grafik dunkelblau dargestellt), "navi.htm" (Navigation, hellblau) und "anzeige.htm" (Anzeigebereich, weiß) geladen.

Aufgabe ist nun, mit zwei Links in der Navigation jeweils zwei dazugehörige Seiten zu laden: Eine für den Anzeigebereich, eine für die Kopfzeile. Dies wird durch das folgende JavaScript ermöglicht, welches in das BODY-Segment (also zwischen die beiden Einträge <BODY> und </BODY>) der Navigation eingebaut wird:

01:<script language="JavaScript">
02:<!--
03:function start1()
04:{
05:parent.kopfzeile.location = "kopf1.htm";
06:parent.anzeige.location = "anzeige1.htm";
07:}
08:function start2()
09:{
10:parent.kopfzeile.location = "kopf2.htm";
11:parent.anzeige.location = "anzeige2.htm";
12:}
13:--></script>

(Die rot markierten Zeilennummern gehören nicht zum Script und dienen nur der Veranschaulichung. Wollen Sie das Script abtippen, lassen sie diese Nummern bitte weg)

Das Script definiert die beiden Funktionen "start1" und "start2". Die Funktion "start1" lädt in die Kopfzeile (Zeile 05) die Seite "kopf1.htm" und in den Anzeigebereich die Seite "anzeige1.htm". "start2" erledigt gleiches für "kopf2.htm" und "anzeige2.htm" (Zeile 10/11). Hierbei muss in der Initialisierungszeile der Name des gewünschten Frames angegeben werden (im Beispiel also in Zeile 05 das Frame "kopfzeile", das im Frameset-Quelltext definiert wurde, in Zeile 06 "anzeige" etc).

Nun müssen diese Funktionen nur noch aufgerufen werden. Dies geschieht durch Hyperlinks, die ebenfalls in die Navigation integriert werden:

<p><a href="javascript:start1()">Link 1</a></p>
<p><a href="javascript:start2()">Link 2</a></p>

Klickt man nun auf den Eintrag "Link 1" wird die Funktion "start1" verwendet, bei "Link 2" die Funktion "start2".

Das in dieser Kurzanleitung verwendete Beispiel können Sie sich nun "in der Praxis" anschauen oder downloaden.


Zurück zum Inhaltsverzeichnis

[an error occurred while processing this directive] [an error occurred while processing this directive]

© Grammiweb.de Internetlösungen. Alle Rechte vorbehalten. Stand: 25.11.2024
Seitenanfang - Sponsor werden - Datenschutz - Medien - Impressum - Werbung - Hilfe - Kontakt