SELFHTML: JavaScript / Objektreferenz / anchors
Author: Redaktion SELFHTML, selfhtml81@selfhtml.org
Description: Welche Aufgaben und Eigenschaften das anchors-Objekt in JavaScript hat.
Keywords: SELFHTML, JavaScript, Objekte, anchors, length, name, text
Date: 2005-10-26T01:05:19+02:00

| # anchors
| anchors: Allgemeines zur Verwendung ### Eigenschaft: name (Name des Verweisankers) length (Anzahl der Verweisanker) text (Text des Verweisankers) x (horizontale Position des Verweisankers) y (vertikale Position des Verweisankers)

## anchors: Allgemeines zur Verwendung

Mit dem Objekt `anchors`, das in der JavaScript-Objekthierarchie unterhalb des document-Objekts liegt, haben Sie Zugriff auf Verweisanker, die in einer HTML-Datei definiert sind. Ein Verweisanker in HTML ist beispielsweise:
`<a name="top">Hier beginnt die Seite</a>`.
In JavaScript 1.0 ist es lediglich möglich, die Anzahl der Verweisanker in einer Datei auszulesen. In JavaScript 1.2 sind jedoch weitere Eigenschaften implementiert worden.

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

### Schema 1 / Beispiel 1:

    document.anchors[#].Eigenschaft

    document.anchors[0].name

### Schema 2 / Beispiel 2:

    document.anchors.Ankername.Eigenschaft

    document.anchors.oben.text

### Schema 3 / Beispiel 3:

    document.anchors["Ankername"].Eigenschaft

    document.anchors["oben"].text

### Erläuterung:

Verweisanker können Sie auf zwei Arten ansprechen:

- mit einer Indexnummer (wie in Schema 1 / Beispiel 1)
  Bei Verwendung von Indexnummern geben Sie `document.anchors` an und dahinter in eckigen Klammern, den wievielten Anker in der Datei Sie meinen. Beachten Sie, dass der Zähler bei 0 beginnt, d.h. den ersten Verweisanker sprechen Sie mit `anchors[0]` an, den zweiten Verweisanker mit `anchors[1]` usw. Beim Zählen gilt die Reihenfolge, in der die Verweisanker in der Datei notiert sind.
- mit Namen des Ankers (wie in Schema 2 / Beispiel 2)
  Dabei wird der Anker als Unterobjekt von `document.anchors` angesprochen. Notieren Sie `document.anchors`, darauf einen Punkt `.` zum Ansprechen des Unterobjekts und schließlich den Namen, den Sie bei der Definition des Verweisankers im einleitenden `<a>`-Tag im `name`-Attribut angegeben haben.
- mit Namen des Ankers als Indexnamen (wie in Schema 3 / Beispiel 3)
  Diese Art ist eine zu Schema 2 äquivalente Schreibweise, denn in JavaScript ist das Ansprechen von Unterobjekten über `objekt.unterobjekt` gleichwertig zu `objekt["unterobjekt"]`. Notieren Sie wie beim Ansprechen mit Indexnummer hinter `document.anchors` eckige Klammern. Innerhalb der eckigen Klammern notieren Sie in Anführungszeichen den Namen, den Sie bei der Definition des Verweisankers im einleitenden `<a>`-Tag im `name`-Attribut angegeben haben. Diese Schreibweise ist vor allem zum Zugriff auf Anker nützlich, deren Namen Sonderzeichen enthalten, welche den Zugriff nach Schema 2 unmöglich machen. Sie können zwischen den eckigen Klammern auch eine String-Variable notieren, die den Ankernamen enthält.

### Beachten Sie:

Gemäß dem HTML-spezifischen DOM greift z.B. `document.anchors.Ankername` auf das `a`-Elementobjekt zu, das den Anker bildet. Neben den hier beschriebenen Eigenschaften können Sie auf diese Art weitere Eigenschaften und Methoden nutzen, die in der Referenz zum a-Elementobjekt aufgelistet sind.

Im Internet Explorer ist es nicht möglich, mit dem Schema 2 und 3 auf einen Verweisanker zuzugreifen. Sie können aber jeden Anker über das all-Objekt und dessen Eigenschaften ansprechen, z.B. `document.all.Ankername` und `document.all.Ankername`. In neueren Internet-Explorer-Versionen steht zudem die Methode document.getElementsByName() aus dem HTML-spezifischen DOM zur Verfügung.

## name

Speichert den Namen eines Verweisankers.

### Beispiel:

Anzeigebeispiel: So sieht's aus

    <html><head><title>Test</title>
    </head><body>
    <h1><a name="goethe">Meine Wahl</a></h1>
    <pre>Ich liebe mir den heiteren Mann
    Am meisten unter meinen Gästen:
    Wer sich nicht selbst zum besten haben kann,
    der ist gewiss nicht von den Besten.</pre>
    <p><a href="javascript:alert(document.anchors[0].name)">Der Ankername</a></p>

    </body></html>

### Erläuterung:

Mit `document.anchors[0].name` können Sie den Namen eines Verweisankers in einer HTML-Datei ermitteln. Das Beispiel enthält zunächst HTML-Text mit einem Anker und einen Verweis. Beim Anklicken wird mit alert() der Name des Verweises ausgegeben.

### Beachten Sie:

Gegenwärtig ist es nur im Netscape 6.1 möglich, den Namen eines Ankers zu ändern.

## length

Speichert, wie viele Verweisanker eine HTML-Datei enthält.

### Beispiel:

Anzeigebeispiel: So sieht's aus

    <html><head><title>Test</title>
    </head><body>
    <h1><a name="oben">Anfang</a></h1>
    Am Anfang war, naja, seien wir ehrlich, wir wissen es nicht.
    <h2><a name="mitte">Weisheit</a></h2>
    Wem das Wasser bis zum Halse steht, der darf den Kopf nicht haengen lassen.
    <h2><a name="unten">Ende</a></h2>
    <script type="text/javascript">
    document.write("Gefunden wurden " + document.anchors.length + " Anker")
    </script>
    </body></html>

### Erläuterung:

Mit `document.anchors.length` können Sie die Anzahl der Verweisanker in einer HTML-Datei ermitteln. Das Beispiel enthält zunächst HTML-Text mit einigen Ankern und schreibt am Ende mit document.write() dazu, wie viele Anker in der Datei gefunden wurden.

## text

Speichert den Text eines Verweisankers.

### Beispiel:

Anzeigebeispiel: So sieht's aus

    <html><head><title>Test</title>
    </head><body>
    <h1><a name="oben">Steuer</a></h1>
    Der Mensch im gesellschaftlichen Leben kann sein Gut nicht genießen,
    ohne es mit dem Staat zu teilen.
    <h2><a name="mitte">Einsicht</a></h2>
    Das Werk eines Philosophen ist viel leichter zu verbrennen, als zu widerlegen.
    <h2><a name="unten">Ende</a></h2>
    <p><a href="javascript:alert(document.anchors['mitte'].text)">mittlerer Ankertext</a></p>

    </body></html>

### Erläuterung:

Mit `document.anchors['mitte'].text` können Sie den Text eines Verweisankers zwischen `<a>` und `</a>` ermitteln. Das Beispiel enthält zunächst HTML-Text mit einigen Ankern und einen Verweis. Beim Anklicken des Verweises wird mit alert() der Text des Ankers ausgegeben.

### Beachten Sie:

Der Internet Explorer kennt diese Eigenschaft nicht, selbst wenn der Anker in einer Weise angesprochen wird, die der Internet Explorer versteht. Eine mögliche Alternative speziell für den Internet Explorer ist die Eigenschaft innerText.

## x

Speichert die horizontale Position eines Verweisankers gemessen vom Fensterrand.

### Beispiel:

Anzeigebeispiel: So sieht's aus

    <html><head><title>Test</title>
    </head><body>
    <a name="oben">ein Anker</a>
    <p><a href="javascript:alert(document.anchors[0].x)">Position von links</a></p>

    </body></html>

### Erläuterung:

Mit `document.anchors[0].x` können Sie die horizontale Position eines Verweisankers in einer HTML-Datei ermitteln. Das Beispiel enthält einen Verweisanker und einen Verweis. Beim Anklicken wird die Position des Ankers vom linken Fensterrand aus gesehen ausgegeben.

## y

Speichert die vertikale Position eines Verweisankers gemessen vom Fensterrand.

### Beispiel:

Anzeigebeispiel: So sieht's aus

    <html><head><title>Test</title>
    </head><body>
    <a name="oben">ein Anker</a>
    <p><a href="javascript:alert(document.anchors[0].y)">Position von oben</a></p>

    </body></html>

### Erläuterung:

Mit `document.anchors[0].y` können Sie die vertikale Position eines Verweisankers in einer HTML-Datei ermitteln. Das Beispiel enthält einen Verweisanker und einen Verweis. Beim Anklicken wird die Position des Ankers vom oberen Fensterrand aus gesehen ausgegeben.

| applets
| style

© 2007 Impressum