Diese Seiten sind Teil von Bachsau’s Archiv.
Die hier beschriebenen Praktiken entsprechen nicht mehr dem Stand der Technik!
Bitte nutzen Sie für aktuelle Projekte das fortlaufend aktualisierte SELFHTML-Wiki.

SELFHTML

layers

Informationsseite

nach unten layers: Allgemeines zur Verwendung

Eigenschaften:

nach unten above (oberhalb liegender Layer)
nach unten background (Hintergrundbild eines Layers)
nach unten bgColor (Hintergrundfarbe eines Layers)
nach unten below (unterhalb liegender Layer)
nach unten clip (Anzeigebereich eines Layers)
nach unten document (document-Objekt eines Layers)
nach unten left (Links-Wert der linken oberen Ecke relativ)
nach unten length (Anzahl Layer)
nach unten name (Name eines Layers)
nach unten pageX (Links-Wert der linken oberen Ecke absolut)
nach unten pageY (Oben-Wert der linken oberen Ecke absolut)
nach unten parentLayer (Objekt des Eltern-Layers)
nach unten siblingAbove (Objekt des oberhalb liegenden Layers)
nach unten siblingBelow (Objekt des unterhalb liegenden Layers)
nach unten src (Externe Datei eines Layers)
nach unten top (Oben-Wert der linken oberen Ecke relativ)
nach unten visibility (Sichtbarkeit eines Layers)
nach unten zIndex (Schichtposition eines Layers)

Methoden:

nach unten captureEvents() (Ereignisse überwachen)
nach unten handleEvent() (Ereignisse behandeln)
nach unten load() (externe Datei laden)
nach unten moveAbove() (über einen anderen Layer legen)
nach unten moveBelow() (unter einen anderen Layer legen)
nach unten moveBy() (bewegen um Anzahl Pixel)
nach unten moveTo() (bewegen zu Position relativ)
nach unten moveToAbsolute() (bewegen zu Position absolut)
nach unten releaseEvents() (Ereignisüberwachung beenden)
nach unten resizeBy() (Breite und Höhe verändern um Anzahl Pixel)
nach unten resizeTo() (Breite und Höhe auf Anzahl Pixel setzen)
nach unten routeEvent() (Event-Handler-Hierarchie durchlaufen)

 nach unten 

layers: Allgemeines zur Verwendung

Mit dem Objekt layers, das in der JavaScript-Objekthierarchie unterhalb des Seite document-Objekts liegt, haben Sie Zugriff auf alle Layer, die in einer HTML-Datei definiert sind. Dieses Objekt ist - ebenso wie die entsprechenden HTML-Tags - Netscape-4-spezifisch. Es ist die Grundlage für Seite Dynamisches Positionieren bei Netscape 4.x (dort finden Sie auch weitere Beispiele).

Wichtig:

Das layers-Objekt wird von Netscape ab Version 6.0 nicht mehr unterstützt. Es sollte also nur noch aus Gründen der Rückwärtskompatibilität zu Netscape 4.x Verwendung finden, da kein einziger moderner Browser dieses Objekt interpretiert.

Mit dem layers-Objekt arbeiten:

Ein neues Layer-Objekt wird automatisch erzeugt, wenn der Web-Browser einen Kapitel Layer in der HTML-Datei vorfindet.

Es stehen folgende Arten zur Verfügung, mit JavaScript einen bestimmten Layer anzusprechen:

Schema 1 / Beispiel 1:

document.layers[#].Eigenschaft
document.layers[#].Methode()

Farbe = document.layers[0].bgColor;

Schema 2 / Beispiel 2:

document.layers.Layername.Eigenschaft
document.layers.Layername.Methode()

Farbe = document.layers.Kopfbereich.bgColor;

Schema 3 / Beispiel 3:

document.layers["Layername"].Eigenschaft
document.layers["Layername"].Methode()

Farbe = document.layers["Kopfbereich"].bgColor;

Schema 4 / Beispiel 4:

document.LayerName.Eigenschaft
document.LayerName.Methode()

Farbe = document.Kopfbereich.bgColor;

Erläuterung:

Layer können Sie auf zwei Arten ansprechen:

nach obennach unten

JavaScript 1.2Netscape 4.0Lesen above

Speichert, welcher andere Layer über einem Layer liegt. Die Eigenschaft above liefert das Layer-Objekt des darüberliegenden Layers zurück. Sie müssen also noch eine Eigenschaft wie name anhängen, um mehr über den Layer zu erfahren.

Beispiel:

Beispiel-Seite Anzeigebeispiel: So sieht's aus

<html><head><title>Test</title>
</head><body>
<layer name="GelberLayer" top="100" left="50" height="200" bgcolor="#FFFFE0">
Inhalt des gelben Layers
</layer>
<layer top="150" name="LilaLayer" left="100" height="200" bgcolor="#FFE0FF">
Inhalt des lila Layers
</layer>
<a href="javascript:alert(document.GelberLayer.above.name)">
Wer liegt &uuml;ber dem gelben Layer?</a><br>
<a href="javascript:alert(document.GelberLayer.above.top)">
Und wo beginnt er?</a><br>
</body></html>

Erläuterung:

Im Beispiel werden zwei Layer mit den Namen GelberLayer und LilaLayer definiert. Außerdem sind zwei Verweise notiert. Der eine Verweis meldet beim Anklicken den Namen des Layers, der über dem gelben Layer liegt (document.GelberLayer.above.name), der andere Verweis dessen Position von oben (document.GelberLayer.above.top). Über dem gelben Layer liegt der lila Layer, da dieser in der Datei nach dem gelben Layer definiert wird.

nach obennach unten

JavaScript 1.2Netscape 4.0Lesen/Ändern background

Speichert das Hintergrundbild (Wallpaper) eines Layers. Das folgende Beispiel zeigt, wie Sie ein solches Hintergrundbild dynamisch ändern können.

Beispiel:

Beispiel-Seite Anzeigebeispiel: So sieht's aus

<html><head><title>Test</title>
<script type="text/javascript">
var Neubild = new Image();
Neubild.src = "back02.gif";
function Hintergrund () {
  document.TestLayer.background.src = "back02.gif";
}
</script>
</head><body>
<layer background="back03.gif" top="150" name="TestLayer"
left="100" height="200" bgcolor="#FFE0FF">
Inhalt des Layers
</layer>
<a href="javascript:Hintergrund()">Anderer Hintergrund</a>
</body></html>

Erläuterung:

Im Beispiel wird ein Layer mit einem Hintergrundbild definiert. Beim Klick auf den Verweis wird das Hintergrundbild dynamisch durch ein anderes ersetzt. Beachten Sie, dass dazu in dem Script-Bereich im Dateikopf bereits beim Einlesen der Datei mit Hilfe des Seite images-Objekts die Hintergrundgrafik registriert wird, die die andere dynamisch ersetzen soll.
Beim Klick auf den Verweis wird die Funktion Hintergrund() aufgerufen, die das Hintergrundbild dynamisch ändert. Hinter der Adressierung des Layers müssen Sie dabei background.src notieren und diesem Ausdruck die zuvor registrierte Grafik zuweisen.

nach obennach unten

JavaScript 1.2Netscape 4.0Lesen/Ändern bgColor

Speichert die Hintergrundfarbe eines Layers.

Beispiel:

Beispiel-Seite Anzeigebeispiel: So sieht's aus

<html><head><title>Test</title>
<script type="text/javascript">
var Farbe = "aqua";
function Hintergrund () {
  if (document.TestLayer.bgColor == "aqua") {
    document.TestLayer.bgColor = "yellow";
    return;
  } else {
    document.TestLayer.bgColor = "aqua";
    return;
  }
}
</script>
</head><body>
<layer top="150" name="TestLayer" left="100" height="200" bgcolor="aqua">
Inhalt des Layers
</layer>
<a href="javascript:Hintergrund()">Anderer Hintergrund</a>
</body></html>

Erläuterung:

Im Beispiel wird ein Layer definiert. Beim Klick auf den Verweis wird die Funktion Hintergrund() aufgerufen, die im Dateikopf in einem Script-Bereich notiert ist. Diese Funktion fragt ab, welche Hintergrundfarbe der Layer gerade hat, und weist dementsprechend eine andere zu.

Beachten Sie:

Sie können die Hintergrundfarbe eines Layers nicht abfragen, da Netscape 4 merkwürdige bgColor-Werte zurücklieferte, die nicht in das von Netscape dokumentierte Schema (hexadezimale Angabe oder Farbname) passen.

nach obennach unten

JavaScript 1.2Netscape 4.0Lesen/Ändern below

Speichert, welcher andere Layer unter einem Layer liegt. Die Eigenschaft below liefert das Layer-Objekt des darunterliegenden Layers zurück. Sie müssen also noch eine Eigenschaft wie name anhängen, um mehr über den Layer zu erfahren.

Beispiel:

Beispiel-Seite Anzeigebeispiel: So sieht's aus

<html><head><title>Test</title>
</head><body>
<layer name="GelberLayer" top="100" left="50" height="200" bgcolor="#FFFFE0">
Inhalt des gelben Layers
</layer>
<layer top="150" name="LilaLayer" left="100"
height="200" bgcolor="#FFE0FF">
Inhalt des lila Layers
</layer>
<a href="javascript:alert(document.LilaLayer.below.name)">Wer liegt unter dem lila Layer?</a><br>
<a href="javascript:alert(document.LilaLayer.below.left)">Und wo beginnt er?</a><br>
</body></html>

Erläuterung:

Im Beispiel werden zwei Layer mit den Namen GelberLayer und LilaLayer definiert. Außerdem sind zwei Verweise notiert. Der eine Verweis meldet beim Anklicken den Namen des Layers, der unter dem lila Layer liegt (document.LilaLayer.below.name), der andere Verweis dessen Position von links (document.GelberLayer.below.left). Unter dem lila Layer liegt der gelbe Layer, da in der Datei zuerst der gelbe und danach der lila Layer definiert wird.

nach obennach unten

JavaScript 1.2Netscape 4.0Lesen/Ändern clip

Speichert, welcher Ausschnitt eines Layers angezeigt wird. Dabei gibt es folgende Untereigenschaften:
clip.top speichert den Pixelwert oben der linken oberen Ecke des sichtbaren Layer-Bereichs,
clip.left speichert den Pixelwert links der linken oberen Ecke des sichtbaren Layer-Bereichs,
clip.bottom speichert den Pixelwert unten der rechten unteren Ecke des sichtbaren Layer-Bereichs,
clip.right speichert den Pixelwert rechts der rechten unteren Ecke des sichtbaren Layer-Bereichs,
clip.width speichert die Breite des sichtbaren Layer-Bereichs (alternative Angabe zur Angabe einer rechten unteren Ecke),
clip.height speichert die Höhe des sichtbaren Layer-Bereichs (alternative Angabe zur Angabe einer rechten unteren Ecke).

Beispiel:

Beispiel-Seite Anzeigebeispiel: So sieht's aus

<html><head><title>Test</title>
<script type="text/javascript">
function MachKleiner () {
  with (document.MeinLayer) {
    if (clip.height > 0 && clip.width > 0) {
      clip.height -= 10;
      clip.width -= 10;
    }
  }
}
function MachGroesser () {
  with (document.MeinLayer) {
    if (clip.height < 200 && clip.width < 200) {
      clip.height += 10;
      clip.width += 10;
    }
  }
}
</script>
</head><body>
<layer name="MeinLayer" top="80" left="80" height="200" width="200" bgcolor="#FFFFE0">
Inhalt des Layers
</layer>
<a href="javascript:MachKleiner()">Kleiner</a><br>
<a href="javascript:MachGroesser()">Groesser</a>
</body></html>

Erläuterung:

Im Beispiel ist ein Layer definiert. Da innerhalb der HTML-Definition keine Angaben zum clip-Bereich des Layers gemacht werden, wird der gesamte Layer angezeigt. Seine clip-Werte ergeben sich aus der Größe des Layers. Intern sind also clip.top und clip.left gleich 0, und clip.width, clip.height, clip.bottom und clip.right haben alle den Wert 200, weil sich dies aus den Angaben height=200 width=200 in der HTML-Definition des Layers ergibt.
Mit Hilfe von zwei Verweisen lässt sich im Beispiel der sichtbare Anzeigebereich des Layers verkleinern und wieder vergrößern. Die Verweise rufen die Funktionen MachKleiner() bzw. MachGroesser() auf, die in einem Script-Bereich im Dateikopf notiert sind. Die Funktion MachKleiner() fragt ab, ob clip.width und clip.height größer 0 sind. Wenn ja, werden beide Werte um 10 verringert, wodurch der Anzeigebereich des Layers von rechts unten um 10 Pixel beschnitten wird. Die Funktion MachGroesser() tut einfach das Umgekehrte.

nach obennach unten

JavaScript 1.2Netscape 4.0 document

Jeder Layer wird von Netscape wie ein eigenes kleines Dokument behandelt. Deshalb gibt es für Layer auch ein document-Objekt, das genauso funktioniert wie das globale Seite document-Objekt. Dadurch haben Sie Zugriff auf Dokument-Unterobjekte wie Grafiken, Formulare usw. Um solche Elemente innerhalb eines Layers anzusprechen, müssen Sie die Elemente über das Layer-eigene document-Objekt ansprechen.

Beispiel:

Beispiel-Seite Anzeigebeispiel: So sieht's aus

<html><head><title>Test</title>
<script type="text/javascript">
function AndererInhalt () {
  document.MeinLayer.document.open();
  document.MeinLayer.document.write("Jetzt ist der Verweis weg!");
  document.MeinLayer.document.close();
}
</script>
</head><body>
<layer name="MeinLayer" bgcolor="#FFFFE0">
<a href="javascript:AndererInhalt()">Diesen Verweis ueberschreiben</a>
</layer>
</body></html>

Erläuterung:

Im Beispiel wird ein Layer definiert, der einen Verweis enthält. Beim Anklicken wird die Funktion AndererInhalt() aufgerufen, die in einem Script-Bereich im Dateikopf notiert ist. Diese Funktion benutzt typische Methoden des document-Objekts wie open(), write() und close(). Das Besondere ist, dass es sich nicht um das globale Dokument handelt, sondern um das Dokument, das der Layer darstellt. Dies wird durch eine Adressierung wie document.MeinLayer.document erreicht.

Beachten Sie:

Das Dokumentenmodell der Layer im Netscape hat auch Auswirkungen auf im HTML-Dokument definierte Formulare, Grafiken oder Verweise. Berücksichtigen Sie hier, dass alle Elemente, die sich in einem Layer befinden, zum Dokument des Layers gehören und nicht zum HTML-Dokument.

Beispiel:

Beispiel-Seite Anzeigebeispiel: So sieht's aus

<html><head><title>Test</title>
</head><body>
<layer name="MeinLayer" bgcolor="#FFFFE0" left="300">
<img src="blau.gif" width="104" height="102" border="0" alt="">
</layer>
<script type="text/javascript">
document.write("Anzahl der Bilder im HTML-Dokument: " + document.images.length);
document.write("<br>Anzahl der Bilder im Layer: " + document.MeinLayer.document.images.length);
</script>
</body></html>

Erläuterung:

Im Beispiel wurde ein Layer definiert, der eine Grafik enthält. Weitere Bilder enthält die Datei nicht. Danach folgt ein JavaScript-Bereich der mit der Methode Seite document.write die Anzahl der Bilder im Dokument und im Layer ausgibt. Anhand des Beispieles sehen Sie, dass nur das Dokument des Layers eine Grafik enthält. Mit einer Adressierung wie document.MeinLayer.document können Sie diese Grafik ansprechen und z.B. deren Eigenschaft Seite src ändern.

nach obennach unten

JavaScript 1.2Netscape 4.0Lesen/Ändern left

Speichert den Pixelwert für links der linken oberen Ecke eines Layers. Bezug ist dabei das übergeordnete Dokument. Das kann entweder das globale Dokument sein oder ein Layer, innerhalb dessen der aktuelle Layer definiert ist. Für absoluten Bezug siehe nach unten pageX.

Beispiel:

Beispiel-Seite Anzeigebeispiel: So sieht's aus

<html><head><title>Test</title>
</head><body>
<layer name="SuperLayer" left="100">
  <layer name="Layerchen" left="200" width="300" bgcolor="#FFFFE0">
  <a href="javascript:alert(document.SuperLayer.document.Layerchen.left)">Links-Wert?</a>
  </layer>
</layer>
</body></html>

Erläuterung:

Das Beispiel enthält einen Layer innerhalb eines anderen Layers, beginnend bei Pixelposition 200 von links, mit einem Verweis. Beim Anklicken des Verweises wird der Links-Wert des inneren Layers ausgegeben. Der beträgt 200, obwohl der Layer optisch gesehen bei Position 300 beginnt, weil der übergeordnete Layer ja schon bei 100 beginnt und die 200 des inneren Layers dazu addiert wird.

nach obennach unten

JavaScript 1.2Netscape 4.0Lesen length

Speichert die Anzahl der Layer in einer Datei.

Beispiel:

Beispiel-Seite Anzeigebeispiel: So sieht's aus

<html><head><title>Test</title>
</head><body>
<layer></layer>
<layer></layer>
<layer></layer>
<layer></layer>
<script type="text/javascript">
document.write("Auf dieser Seite gibt es " + document.layers.length + " Layer");
</script>
</body></html>

Erläuterung:

Das Beispiel enthält ein paar Layer zu Testzwecken und schreibt dann mit Seite document.write() die Anzahl der definierten Layer in die Datei.

nach obennach unten

JavaScript 1.2Netscape 4.0Lesen/Ändern name

Speichert den Namen eines Layers.

Beispiel:

Beispiel-Seite Anzeigebeispiel: So sieht's aus

<html><head><title>Test</title>
</head><body>
<layer name="Layerchen" bgcolor="#FFFFE0">
<a href="javascript:alert(document.Layerchen.name)">Wie heisse ich denn?</a>
</layer>
</body></html>

Erläuterung:

Das Beispiel enthält einen Layer mit einem Verweis. Beim Anklicken des Verweises wird der Name des Layers in einem Meldungsfenster ausgegeben. Es ist derjenige Name, der in HTML bei dem Attribut name angegeben ist.

nach obennach unten

JavaScript 1.2Netscape 4.0Lesen/Ändern pageX

Speichert den Pixelwert für links der linken oberen Ecke eines Layers. Bezug ist dabei das globale Dokument, auch wenn der aktuelle Layer innerhalb eines anderen Layers definiert ist.

Beispiel:

Beispiel-Seite Anzeigebeispiel: So sieht's aus

<html><head><title>Test</title>
<script type="text/javascript">
function NachLinks () {
  document.Layerchen.pageX = 0;
}
</script>
</head><body>
<layer name="Layerchen" left="300" width="300" bgcolor="#FFFFE0">
<a href="javascript:NachLinks()">Nach links mit diesem Layer</a>
</layer>
</body></html>

Erläuterung:

Das Beispiel enthält einen Layer, beginnend bei Pixelposition 300 von links, mit einem Verweis. Beim Anklicken des Verweises wird die Funktion NachLinks() aufgerufen, die im Dateikopf in einem Script-Bereich notiert ist. Diese Funktion ändert den Links-Wert des Layers auf 0, sodass der Layer anschließend ganz links beginnt.

nach obennach unten

JavaScript 1.2Netscape 4.0Lesen/Ändern pageY

Speichert den Pixelwert für oben der linken oberen Ecke eines Layers. Bezug ist dabei das globale Dokument, auch wenn der aktuelle Layer innerhalb eines anderen Layers definiert ist.

Beispiel:

Beispiel-Seite Anzeigebeispiel: So sieht's aus

<html><head><title>Test</title>
<script type="text/javascript">
function NachOben () {
  document.Layerchen.pageY = 0;
}
</script>
</head><body>
<layer name="Layerchen" top="300" width="300" bgcolor="#FFFFE0">
<a href="javascript:NachOben()">Nach oben mit diesem Layer</a>
</layer>
</body></html>

Erläuterung:

Das Beispiel enthält einen Layer, beginnend bei Pixelposition 300 von oben, mit einem Verweis. Beim Anklicken des Verweises wird die Funktion NachOben() aufgerufen, die im Dateikopf in einem Script-Bereich notiert ist. Diese Funktion ändert den Links-Wert des Layers auf 0, sodass der Layer anschließend ganz links beginnt.

nach obennach unten

JavaScript 1.2Netscape 4.0 parentLayer

Speichert das Eltern-Objekt eines Layers. Das kann entweder das Seite window-Objekt sein, oder, falls der Layer innerhalb eines anderen Layers definiert ist, dieser übergeordnete Layer.

Beispiel:

Beispiel-Seite Anzeigebeispiel: So sieht's aus

<html><head><title>Test</title>
</head><body>
<layer name="SuperLayer">
  <layer name="Layerchen" bgcolor="#FFFFE0">
  <a href="javascript:alert(document.SuperLayer.document.Layerchen.parentLayer.name)">
     Super-Name?</a>
  </layer>
</layer>
</body></html>

Erläuterung:

Das Beispiel enthält einen Layer innerhalb eines anderen Layers. Beim Anklicken des Verweises im inneren Layer wird der Name des Eltern-Objekts ausgegeben. Da das Elternobjekt in diesem Fall der übergeordnete Layer ist, wird dessen Name, also SuperLayer, ausgegeben.

nach obennach unten

JavaScript 1.2Netscape 4.0 siblingAbove

Speichert denjenigen Layer, der aufgrund der Schichtposition, die z.B. mit dem Attribut z-index in HTML festgelegt wird, über dem angesprochenen Layer liegt. Es handelt sich dabei um ein Layer-Objekt, für das seinerseits alle verfügbaren Eigenschaften und Methoden gelten.

Beispiel:

Beispiel-Seite Anzeigebeispiel: So sieht's aus

<html><head><title>Test</title>
</head><body>
<layer name="L1" left="100" top="100" z-index="3" bgcolor="#FFFFE0">Layer-Inhalt L1</layer>
<layer name="L2" left="120" top="120" z-index="1" bgcolor="#FFFFD0">Layer-Inhalt L2</layer>
<layer name="L3" left="140" top="140" z-index="4" bgcolor="#FFFFC0">Layer-Inhalt L3</layer>
<layer name="L4" left="140" top="140" z-index="2" bgcolor="#FFFFB0">Layer-Inhalt L4</layer>
<layer name="L5" left="100" top="180">
<a href="javascript:alert(document.L1.siblingAbove.name)">L1 siblingAbove</a><br>
<a href="javascript:alert(document.L2.siblingAbove.name)">L2 siblingAbove</a><br>
<a href="javascript:alert(document.L3.siblingAbove.name)">L3 siblingAbove</a><br>
<a href="javascript:alert(document.L4.siblingAbove.name)">L4 siblingAbove</a><br>
</layer>
</body></html>

Erläuterung:

Das Beispiel definiert insgesamt fünf Layer. Der zuletzt definierte Layer enthält vier Verweise. Jeder Verweis gibt für einen der ersten vier Layer den Namen desjenigen Layers aus, der aufgrund der z-index-Ordnung über dem angesprochenen Layer liegt. Klickt man beispielsweise auf den ersten Verweis, wird für den Layer mit dem Namen L1 der Name des Layers ausgegeben, der darüber liegt. Das ist in dem Fall der Layer mit dem Namen L3, da der Layer L1 den z-index-Wert 3 hat und der Layer L3 den nächsthöheren z-index-Wert, nämlich 4.

nach obennach unten

JavaScript 1.2Netscape 4.0 siblingBelow

Speichert denjenigen Layer, der aufgrund der Schichtposition, die z.B. mit dem Attribut z-index in HTML festgelegt wird, unter dem angesprochenen Layer liegt. Es handelt sich dabei um ein Layer-Objekt, für das seinerseits alle verfügbaren Eigenschaften und Methoden gelten.

Beispiel:

Beispiel-Seite Anzeigebeispiel: So sieht's aus

<html><head><title>Test</title>
</head><body>
<layer name="L1" left="100" top="180">
<a href="javascript:alert(document.L2.siblingBelow.name)">L2 siblingBelow</a><br>
<a href="javascript:alert(document.L3.siblingBelow.name)">L3 siblingBelow</a><br>
<a href="javascript:alert(document.L4.siblingBelow.name)">L4 siblingBelow</a><br>
<a href="javascript:alert(document.L5.siblingBelow.name)">L5 siblingBelow</a><br>
</layer>
<layer name="L2" left="100" top="100" z-index="3" bgcolor="#FFFFE0">Layer-Inhalt L2</layer>
<layer name="L3" left="120" top="120" z-index="1" bgcolor="#FFFFD0">Layer-Inhalt L3</layer>
<layer name="L4" left="140" top="140" z-index="4" bgcolor="#FFFFC0">Layer-Inhalt L4</layer>
<layer name="L5" left="140" top="140" z-index="2" bgcolor="#FFFFB0">Layer-Inhalt L5</layer>
</body></html>

Erläuterung:

Das Beispiel definiert insgesamt fünf Layer. Der erste Layer enthält vier Verweise. Jeder Verweis gibt für einen der folgenden vier Layer den Namen desjenigen Layers aus, der aufgrund der z-index-Ordnung unter dem angesprochenen Layer liegt. Klickt man beispielsweise auf den ersten Verweis, wird für den Layer mit dem Namen L2 der Name des Layers ausgegeben, der darunter liegt. Das ist in dem Fall der Layer mit dem Namen L5, da der Layer L1 den z-index-Wert 3 hat und der Layer L2 den nächstniedrigeren z-index-Wert, nämlich 2.

nach obennach unten

JavaScript 1.2Netscape 4.0Lesen/Ändern src

Speichert die externe Datei, die in einen Layer eingebunden ist.

Beispiel:

Beispiel-Seite Anzeigebeispiel: So sieht's aus

<html><head><title>Test</title>
</head><body>
<layer name="extern" left="50" top="30" width="600" height="200" src="news.htm">
</layer>
<layer left="50" top="250">
<script type="text/javascript">
document.write("<hr><b>Eingebunden wurde die Datei: <\/b>" + window.document.extern.src);
</script>
</layer>
</body></html>

Erläuterung:

Das Beispiel enthält zwei positionierte Layer. Der Inhalt des ersten Layers ist eine externe Datei namens news.htm. Im zweiten Layer wird mit Hilfe von Seite document.write() die genaue Adresse der externen Datei in den Layer-Bereich geschrieben. Beachten Sie, dass in diesem Fall window.document.extern.src zur Adressierung des anderen Layers verwendet werden muss, da document.extern.src sich sonst nur auf den aktuellen Layer beziehen würde und dieser kein Element namens extern enthält.

nach obennach unten

JavaScript 1.2Netscape 4.0Lesen/Ändern top

Speichert den Pixelwert für oben der linken oberen Ecke eines Layers. Bezug ist dabei das übergeordnete Dokument. Das kann entweder das globale Dokument sein oder ein Layer, innerhalb dessen der aktuelle Layer definiert ist. Für absoluten Bezug siehe nach oben pageY.

Beispiel:

Beispiel-Seite Anzeigebeispiel: So sieht's aus

<html><head><title>Test</title>
</head><body>
<layer name="SuperLayer" top="100">
  <layer name="Layerchen" top="200" width="300" bgcolor="#FFFFE0">
  <a href="javascript:alert(document.SuperLayer.document.Layerchen.top)">Oben-Wert?</a>
  </layer>
</layer>
</body></html>

Erläuterung:

Das Beispiel enthält einen Layer innerhalb eines anderen Layers, beginnend bei Pixelposition 200 von oben, mit einem Verweis. Beim Anklicken des Verweises wird der Oben-Wert des inneren Layers ausgegeben. Der beträgt 200, obwohl der Layer optisch gesehen bei Position 300 beginnt, weil der übergeordnete Layer ja schon bei 100 beginnt und die 200 des inneren Layers dazu addiert wird.

nach obennach unten

JavaScript 1.2Netscape 4.0Lesen/Ändern visibility

Speichert, ob bzw. dass ein Layer sichtbar ist oder nicht.

Beispiel:

Beispiel-Seite Anzeigebeispiel: So sieht's aus

<html><head><title>Test</title>
<script type="text/javascript">
function EinAus (Nummer) {
  if (window.document.layers[Nummer].visibility == "show") {
    window.document.layers[Nummer].visibility = "hide";
    return;
  }
  if (window.document.layers[Nummer].visibility == "hide") {
    window.document.layers[Nummer].visibility = "show";
    return;
  }
}
</script>
</head><body>
<layer name="GelberLayer" left="50" top="30" width="200" height="200"
 visibility="show" bgcolor="#FFFFE0">
<a href="javascript:EinAus(1)">anderer Layer ein/aus</a>
</layer>
<layer name="LilaLayer" left="250" top="30" width="200" height="200"
 visibility="show" bgcolor="#FFE0FF">
<a href="javascript:EinAus(0)">anderer Layer ein/aus</a>
</layer>
</body></html>

Erläuterung:

Im Beispiel werden zwei positionierte Layer definiert. Jeder der beiden Layer enthält einen Verweis, bei dessen Anklicken der jeweils andere Layer aus- und wieder eingeblendet wird. Dazu wird jeweils die Funktion EinAus() aufgerufen, die im Dateikopf notiert ist. Als Parameter wird die Indexnummer des jeweils anderen Layers übergeben. Die Eigenschaft visibility kann die drei Werte hide (verstecken), show (anzeigen) und inherit (wie vom Eltern-Layer vererbt) haben.

nach obennach unten

JavaScript 1.2Netscape 4.0Lesen/Ändern zIndex

Speichert die Schichtposition eines Layers.

Beispiel:

Beispiel-Seite Anzeigebeispiel: So sieht's aus

<html><head><title>Test</title>
</head><body>
<layer z-index="527" name="EinLayer">
<a href="javascript:alert(window.document.EinLayer.zIndex)">z-index?</a>
</layer>
</body></html>

Erläuterung:

Im Beispiel wird ein Layer definiert, der per HTML-Attribut einen z-index-Wert von 527 erhält. Innerhalb des Layers ist ein Verweis notiert. Beim Anklicken des Verweises wird der z-Index-Wert des Layers in einem Meldungsfenster ausgegeben.

nach obennach unten

JavaScript 1.2Netscape 4.0 captureEvents()

Überwacht Anwenderereignisse in einem Layer. Funktioniert genau so wie Seite captureEvents() beim window-Objekt (nähere Informationen siehe dort). Der einzige Unterschied ist, dass Sie mit window.document.Layer-Name.caputeEvents() nur Ereignisse innerhalb des Layer-Bereichs überwachen können, keine Ereignisse im gesamten Fensterbereich (zu dem beispielsweise auch Titelleiste, Menüleisten usw. gehören).

nach obennach unten

JavaScript 1.2Netscape 4.0 handleEvent()

Übergibt ein Ereignis an ein Element, das in der Lage ist, auf das Ereignis zu reagieren. Funktioniert genau so wie Seite handleEvent() beim window-Objekt (nähere Informationen siehe dort). Der einzige Unterschied ist, dass window.document.Layer-Name.handleEvent() nur Ereignisse übergeben kann, die mit nach oben window.document.Layer-Name.captureEvents() überwacht werden.

nach obennach unten

JavaScript 1.2Netscape 4.0 load()

Lädt eine externe Datei in einen Layer. Erwartet zwei Parameter:
1. Quelle = Eine (HTML)-Datei, die geladen werden soll.
2. Breite = Anzeigebreite des Layers.

Beispiel:

Beispiel-Seite Anzeigebeispiel: So sieht's aus

<html><head><title>Test</title>
<script type="text/javascript">
function Laden () {
  document.EinLayer.load("news.htm", 600);
}
</script>
</head><body>
<a href="javascript:Laden()">News laden</a>
<layer name="EinLayer" top="50" left="20">
</layer>
</body></html>

Erläuterung:

Das Beispiel enthält einen leeren Layer und einen Verweis. Beim Anklicken des Verweises wird die Funktion Laden() aufgerufen, die im Dateikopf notiert ist. Die Anweisung innerhalb der Funktion wendet die Methode load() auf den bis dahin leeren Layer an. Die angegebene Datei news.htm wird in den Layer geladen, und der Layer erhält eine Anzeigebreite von 600 Pixeln.

nach obennach unten

JavaScript 1.2Netscape 4.0 moveAbove()

Legt einen Layer über einen anderen Layer. Erwartet als Parameter den Layer, der überdeckt werden soll. Die Schichtposition des veränderten Layers ändert sich dabei abhängig von der des Layers, der überdeckt werden soll. Diese Methode hat nichts mit dem Bewegen von Layern zu tun.

Beispiel:

Beispiel-Seite Anzeigebeispiel: So sieht's aus

<html><head><title>Test</title>
</head><body>
<layer name="GelberLayer" top="150" left="100" width="200" height="200" bgColor="#FFFFE0">
Gelber Layer<br>
<a href="javascript:window.document.GelberLayer.moveAbove(window.document.LilaLayer)">
nach vorne</a>
</layer>
<layer name="LilaLayer" top="50" left="250" width="200" height="200" bgColor="#FFE0FF">
Lila Layer<br>
<a href="javascript:window.document.LilaLayer.moveAbove(window.document.GelberLayer)">
nach vorne</a>
</layer>
</body></html>

Erläuterung:

Im Beispiel werden zwei positionierte Layer definiert, die sich zum Teil überlappen. Beide enthalten jeweils einen Verweis, um den eigenen Layer über den anderen zu legen.

nach obennach unten

JavaScript 1.2Netscape 4.0 moveBelow()

Legt einen Layer unter einen anderen Layer. Erwartet als Parameter den Layer, der den aktuellen überdecken soll. Die Schichtposition des veränderten Layers ändert sich dabei abhängig von der des Layers, der den aktuellen Layer überdecken soll. Diese Methode hat nichts mit dem Bewegen von Layern zu tun.

Beispiel:

Beispiel-Seite Anzeigebeispiel: So sieht's aus

<html><head><title>Test</title>
</head><body>
<layer name="GelberLayer" top="150" left="100" width="200" height="200" bgColor="#FFFFE0">
Gelber Layer<br>
<a href="javascript:window.document.GelberLayer.moveBelow(window.document.LilaLayer)">
nach hinten</a>
</layer>
<layer name="LilaLayer" top="50" left="250" width="200" height="200" bgColor="#FFE0FF">
Lila Layer<br>
<a href="javascript:window.document.LilaLayer.moveBelow(window.document.GelberLayer)">
nach hinten</a>
</layer>
</body></html>

Erläuterung:

Im Beispiel werden zwei positionierte Layer definiert, die sich zum Teil überlappen. Beide enthalten jeweils einen Verweis, um den eigenen Layer von dem jeweils anderen überdecken zu lassen.

nach obennach unten

JavaScript 1.2Netscape 4.0 moveBy()

Verschiebt einen Layer um so viele Pixel wie angegeben. Erwartet folgende Parameter:
1. x-Wert = um wie viele Pixel der Layer nach links/rechts verschoben werden soll. Negative Werte verschieben nach links, positive nach rechts.
2. y-Wert = um wie viele Pixel der Layer nach oben/unten verschoben werden soll. Negative Werte verschieben nach oben, positive nach unten.

Beispiel:

Beispiel-Seite Anzeigebeispiel: So sieht's aus

<html><head><title>Test</title>
<script type="text/javascript">
function Springen () {
  var x = parseInt(document.Springer.document.Eingabe.hr.value);
  var y = parseInt(document.Springer.document.Eingabe.vr.value);
  document.Springer.moveBy(x, y);
}
</script>
</head><body>
<layer name="Springer" top="150" left="100" width="200" height="200" bgColor="#FFFFE0">
<form name="Eingabe" action="">
Springe um <input type="text" size="5" name="hr"> Pixel horizontal<br>
Springe um <input type="text" size="5" name="vr"> Pixel vertikal<br>
<input type="button" value="Springe" onclick="Springen()">
</form>
</body></html>

Erläuterung:

Im Beispiel wird ein Layer definiert, der ein Formular enthält. Das Formular stellt zwei kleine Eingabefelder bereit, in denen der Anwender eingeben kann, um wie viele Pixel der Layer horizontal und vertikal verschoben werden soll. Beim Anklicken des Buttons, der auch zu dem Formular gehört, wird die Funktion Springen() aufgerufen, die im Dateikopf notiert ist. Diese Funktion ermittelt zunächst die eingegebenen Werte. Da es sich um Zeichenketten handelt, die Methode moveBy() aber Zahlen erwartet, wird die Funktion Seite parseInt() zum Umwandeln der Formulareingaben in eine Zahl angewendet. Anschließend wendet die Funktion die Methode moveBy() mit den ermittelten Werten auf den Layer an.

nach obennach unten

JavaScript 1.2Netscape 4.0 moveTo()

Verschiebt einen Layer auf die anzugebende Position. Erwartet folgende Parameter:
1. x-Wert = Links-Wert für die neue obere linke Ecke des Fensters.
2. y-Wert = Oben-Wert für die neue obere linke Ecke des Fensters.

Beispiel:

Beispiel-Seite Anzeigebeispiel: So sieht's aus

<html><head><title>Test</title>
<script type="text/javascript">
function Springen () {
  var x = parseInt(document.Springer.document.Eingabe.hr.value);
  var y = parseInt(document.Springer.document.Eingabe.vr.value);
  document.Springer.moveTo(x, y);
}
</script>
</head><body>
<layer name="Springer" top="150" left="100" width="200" height="200" bgColor="#FFFFE0">
<form name="Eingabe" action="">
links oben neu: <input type="text" size="5" name="hr"> (von links)<br>
links oben neu: <input type="text" size="5" name="vr"> (von oben)<br>
<input type="button" value="Springe" onclick="Springen()">
</form>
</body></html>

Erläuterung:

Im Beispiel wird ein Layer definiert, der ein Formular enthält. Das Formular stellt zwei kleine Eingabefelder bereit, in denen der Anwender die x- und y-Werte der neuen gewünschten oberen linken Ecke des Layers eingeben kann. Beim Anklicken des Buttons, der auch zu dem Formular gehört, wird die Funktion Springen() aufgerufen, die im Dateikopf notiert ist. Diese Funktion ermittelt zunächst die eingegebenen Werte. Da es sich um Zeichenketten handelt, die Methode moveTo() aber Zahlen erwartet, wird die Funktion Seite parseInt() zum Umwandeln der Formulareingaben in eine Zahl angewendet. Anschließend wendet die Funktion die Methode moveTo() mit den ermittelten Werten auf den Layer an.

Beachten Sie:

Wenn sich der Layer, auf den Sie die moveTo()-Methode anwenden, innerhalb eines anderen Layers befindet, beziehen sich die Angaben relativ zu dem äußeren Layer. Eine Angabe wie moveTo(0,0) springt also zur linken oberen Ecke des äußeren Layers.

nach obennach unten

JavaScript 1.2Netscape 4.0 moveToAbsolute()

Funktioniert genauso wie nach oben moveTo(), mit dem Unterschied, dass die x- und y-Werte absolut zum Anzeigefenster interpretiert werden, falls sich der Layer innerhalb eines anderen Layers befindet.

nach obennach unten

JavaScript 1.2Netscape 4.0 releaseEvents()

Beendet die Überwachung von Anwenderereignissen. Funktioniert genau so wie Seite releaseEvents() beim window-Objekt (nähere Informationen siehe dort). Der einzige Unterschied ist, dass document.Layer-Name.releaseEvent() nur Ereignisüberwachungen beenden kann, die mit nach oben document.Layer-Name.captureEvents() gestartet wurden.

nach obennach unten

JavaScript 1.2Netscape 4.0 resizeBy()

Verändert die Größe eines Layers um so viele Pixel unten und rechts wie angegeben. Erwartet folgende Parameter:
1. x-Wert = um wie viele Pixel der Layer rechts verkleinert/vergrößert werden soll. Negative Werte verkleinern, positive vergrößern.
2. y-Wert = um wie viele Pixel der Layer unten verkleinert/vergrößert werden soll. Negative Werte verkleinern, positive vergrößern.

Beispiel:

Beispiel-Seite Anzeigebeispiel: So sieht's aus

<html><head><title>Test</title>
<script type="text/javascript">
function MachKleiner () {
  document.MeinLayer.resizeBy(-20, -10);
}

function MachGroesser () {
  document.MeinLayer.resizeBy(20, 10);
}
</script>
</head><body>
<layer name="MeinLayer" top="50" left="50" width="200" height="100" bgColor="#FFFFE0">
<a href="javascript:MachKleiner()">Kleiner</a><br>
<a href="javascript:MachGroesser()">Groesser</a><br>
</layer>
</body></html>

Erläuterung:

Im Beispiel ist ein Layer definiert. Mit Hilfe von zwei Verweisen lässt sich im Beispiel der sichtbare Anzeigebereich des Layers verkleinern und wieder vergrößern. Die Verweise rufen die Funktionen MachKleiner() bzw. MachGroesser() auf, die in einem Script-Bereich im Dateikopf notiert sind.
Die Funktion MachKleiner() verringert die Breite des Layers um 20 Pixel und die Höhe um 10 Pixel, die Funktion MachGroesser() tut das Umgekehrte.

nach obennach unten

JavaScript 1.2Netscape 4.0 resizeTo()

Legt die Breite und Höhe eines Layers neu fest. Erwartet folgende Parameter:
1. x-Wert = neue Breite des Layers.
2. y-Wert = neue Höhe des Layers.

Beispiel:

Beispiel-Seite Anzeigebeispiel: So sieht's aus

<html><head><title>Test</title>
<script type="text/javascript">
function Aendern () {
  var x = parseInt(document.L.document.Eingabe.hr.value);
  var y = parseInt(document.L.document.Eingabe.vr.value);
  document.L.resizeTo(x, y);
}
</script>
</head><body>
<layer name="L" top="50" left="50" width="200" height="200" bgColor="#FFFFE0">
<form name="Eingabe" action="">
neue <input type="text" size="5" name="hr"> Breite<br>
neue <input type="text" size="5" name="vr"> Hoehe<br>
<input type="button" value="Aendern" onclick="Aendern()">
</form>
</body></html>

Erläuterung:

Im Beispiel wird ein Layer definiert, der ein Formular enthält. Das Formular stellt zwei kleine Eingabefelder bereit, in denen der Anwender die x- und y-Werte der neuen gewünschten Breite und Höhe des Layers eingeben kann. Beim Anklicken des Buttons, der auch zu dem Formular gehört, wird die Funktion Aendern() aufgerufen, die im Dateikopf notiert ist. Diese Funktion ermittelt zunächst die eingegebenen Werte. Da es sich um Zeichenketten handelt, die Methode resizeTo() aber Zahlen erwartet, wird die Funktion Seite parseInt() zum Umwandeln der Formulareingaben in eine Zahl angewendet. Anschließend wendet die Funktion die Methode resizeTo() mit den ermittelten Werten auf den Layer an.

nach obennach unten

JavaScript 1.2Netscape 4.0 routeEvent()

Übergibt ein Anwenderereignis an das document-Objekt. Von dort aus wird das Ereignis immer weiter nach unten durchgereicht, bis sich ein Event-Handler findet, der das Ereignis verarbeitet. Funktioniert genau so wie Seite routeEvent() beim window-Objekt (nähere Informationen siehe dort). Der einzige Unterschied ist, dass document.Layer-Name.routeEvent() nicht auf Fensterebene ansetzt, sondern auf Layerebene.

 nach oben
weiter Seite links
zurück Seite embeds
 

© 2007 Seite Impressum

Originaladresse dieses Dokuments: http://de.selfhtml.org/javascript/objekte/layers.htm