SELFHTML/Navigationshilfen JavaScript/DOM Objekt-Referenz |
HTML-Elementobjekte | |
HTML-Elementobjekte: Allgemeines zur Verwendung Elementobjekte |
|
Der HTML-Variante des Document Object Models (DOM) zufolge stellt jedes HTML-Element in einer HTML-Datei ein Objekt dar. Wichtig ist dabei zu wissen, wie mit einer Scriptsprache wie JavaScript auf ein solches HTML-Elementobjekt zugegriffen werden kann. Nach Syntax der HTML-Variante des DOM kann nur auf solche HTML-Elemente zugegriffen werden, die in ihrem einleitenden Tag entweder ein name
-Attribut oder ein id
-Attribut enthalten. Nach dem erweiterten XML-DOM lässt sich jedoch auch auf jedes beliebige HTML-Element zugreifen, auch wenn dieses kein name
- oder id
-Attribut hat.
Das name
-Attribut ist in HTML nur bei bestimmten Elementen erlaubt, etwa bei Formularelementen. Deshalb ist diese Zugriffsmethode auch nur bei den folgenden Elementen möglich, da diese ein name
-Attribut erlauben:
a | applet | form | frame | img | input | iframe |
map | meta | object | param | select | textarea |
Mit der Methode document.getElementsByName() können Sie HTML-Elemente ansprechen, die ein name
-Attribut haben.
Das id
-Attribut ist im Gegensatz zum name
-Attribut in fast allen HTML-Elementen erlaubt. Außerdem sollte seine Wertzuweisung ein dokumentweit eindeutiger Name für das Element sein. Dadurch eignet sich diese Zugriffsmethode in den meisten Fällen in der Praxis besser als die über das name
-Attribut.
Mit der Methode document.getElementById() können Sie HTML-Elemente ansprechen, die ein id
-Attribut haben.
Wenn Sie auf HTML-Elemente zugreifen möchten, bei denen weder ein name
-Attribut noch ein id
-Attribut notiert ist, steht Ihnen ein dritter Weg offen: der Zugriff über den Elementbaum. Dabei können sie dann beispielsweise auf die "dritte Tabellenzelle in der zweiten Tabellenreihe der vierten Tabelle im Dokument" zugreifen.
Mit der Methode document.getElementsByTagName() sind solche Zugriffe möglich.
Jedes HTML-Element hat Eigenschaften. Und zwar stellt jedes erlaubte Attribut eines HTML-Elements eine DOM-Eigenschaft dieses Elements dar. So hat beispielsweise das HTML-Element input
ein erlaubtes Atrribut value=
, und das HTML-Element h1
hat ein erlaubtes Attribut align=
. Im DOM gibt es demnach also ein input
-Elementobjekt mit der Eigenschaft value
, und ein h1
-Elementobjekt mit der Eigenschaft align
.
Darüber hinaus definiert das DOM für einige der HTML-Elemente auch Methoden. So kann gibt es für das form
-Elementobjekt (also das DOM-Objekt des HTML-Elements form
) die Methoden submit()
(Formular absenden) und reset()
(Formulareingaben verwerfen).
Für alle Eigenschaften und Methoden von HTML-Elementobjekten gelten die zuvor genannten drei Zugriffsmethoden. Wenn Sie beispielsweise folgendes HTML-Element haben:
<h1 id="Seitenkopfueberschrift" align="center">Text</h1>
Dann können Sie mit document.getElementById()
auf das Element zugreifen und die Objekteigenschaft align
abfragen oder ändern - z.B.:
alert(document.getElementById('Seitenkopfueberschrift').align)
Diese JavaScript-Anweisung gibt ein Meldungsfenster aus, in dem center
steht, weil document.getElementById("Seitenkopfueberschrift").align
auf die Eigenschaft align
des Elementobjekts mit der Id Seitenkopfueberschrift
zugreift.
Auf dieser Seite werden für alle HTML-Elemente die vom DOM erlaubten Eigenschaften und Methoden beschrieben. Die Eigenschaften ergeben sich dabei zwangsläufig aus den erlaubten Attributen der HTML-Elemente gemäß HTML 4.0. Die Methoden werden dagegen nur vom DOM festgelegt.
Jedes HTML-Element stellt gemäß dem DOM außerdem einen Knoten im Elementbaum dar. Deshalb gelten für jedes HTML-Element auch alle Eigenschaften und Methoden des node-Objekts.
Beachten Sie unbedingt die Groß-Kleinschreibung der Eigenschaften und Methoden, die in diesem Abschnitt zu den einzelnen HTML-Elementobjekten aufgelistet sind. Fehler bei der Groß-Kleinschreibung führen zu Fehlern in JavaScript.
Da Opera 5.12 das Document Object Model nur sehr unvollständig implementiert hat, wird in diesem Dokument jeweils darauf hingewiesen, welche Beispiele auch von diesem Browser interpretiert werden.
Universaleigenschaften entsprechen den Universalattributen von HTML. Diese Eigenschaften gelten für fast jedes HTML-Element.
|
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> </head><body> <p id="p_italiano" lang="it" onClick=" alert(document.getElementById('p_italiano').lang)">io senza te</p> </body></html> |
Das Beispiel enthält einen Textabsatz mit einer id="p_italiano"
. Gleichzeitig enthält der Textabsatz einen Event-Handler onClick
. Beim Anklicken des Textes gibt ein Meldungsfenster aus, um welche Sprache es sich bei dem Text handelt - ausgegeben wird die Wertzuweisung des Attributs lang
, also der Wert it
.
Das vorliegende Beispiel wird auch von Opera 5.12 interpretiert.
HTML-Referenz: siehe Element: a
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <a>...</a>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften sowie die folgenden eigenen Eigenschaften und Methoden.
|
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> <link rel="stylesheet" href="styles_1.css"> <script type="text/javascript"> <!-- function AndererLink() { document.getElementById("selfhtml_link").href = "http://selfaktuell.teamone.de/"; document.getElementById("selfhtml_link").firstChild.nodeValue = "SELFHTML aktuell"; } //--> </script> </head><body> <a id="selfhtml_link" href="http://selfhtml.teamone.de/">SELFHTML</a><br> <a href="javascript:AndererLink()">anderer Link!</a> </body></html> |
Die Beispieldatei enthält zwei Verweise. Der erste Verweis führt auf eine Adresse im Netz, der zweite ruft die JavaScript- Funktion AndererLink()
auf, die im Dateikopf notiert ist. Diese Funktion weist der Elementeigenschaft href
einen neuen Wert zu, nämlich eine andere Internetadresse. Mit getElementById("selfhtml_link")
wird dabei auf den Verweis zugegriffen, der mit id="selfhtml_link"
ausgezeichnet ist. Außerdem ändert die Funktion AndererLink()
auch noch dynamisch den Verweistext. Auch dafür wird die DOM-Syntax verwendet, nämlich durch Zuweisung eines neuen Textes an node.nodeValue (firstChild
ist bezeichnet den ersten Kindknoten eines Knotens).
HTML-Referenz: siehe Element: abbr
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <abbr>...</abbr>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften.
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> <style type="text/css"> <!-- .normal { font-weight:normal } .fett { font-weight:bold } --> </style> <script type="text/javascript"> <!-- function wechseln() { if(document.getElementById("abk").className == "normal") document.getElementById("abk").className = "fett"; else document.getElementById("abk").className = "normal"; } //--> </script> </head><body> <p>Das ist eine <abbr id="abk" class="normal" onMouseOver="wechseln()" onMouseOut="wechseln()">Abk.</abbr></p> </body></html> |
Das Beispiel enthält einen Textabsatz mit der Abkürzung Abk.
, die mit <abbr>...</abbr>
ausgezeichnet ist. Das einleitende Tag enthält eine CSS-Klassenangabe, eine eindeutige Id-Angabe und die Event-Handler onMouseOver
und onMouseOut
, die jeweils die JavaScript- Funktion wechseln()
aufgerufen, die im Dateikopf notiert ist. Diese Funktion fragt ab, ob der zugewiesene Klassenname normal
lautet. Wenn ja, wird er auf fett
geändert, wenn nein, wird er auf normal
geändert. Dadurch ergibt sich der Effekt, dass beim Überfahren der Abkürzung mit der Maus der Text der Abkürzung fett dargestellt wird, ansonsten normal.
Beim Internet Explorer war das Beispiel mit dem abbr
-Element außer unter dem Internet Explorer 5.0 der Macintosh Edition nicht nachvollziehbar, mit anderen Elementen dagegen schon.
HTML-Referenz: siehe Element: acronym
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <acronym>...</acronym>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften.
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title></head><body> <p>Das ist ein <acronym id="acr" onMouseOver="document.getElementById('acr').title='Acronym'">Acr.</acronym></p> </body></html> |
Das Beispiel enthält einen Textabsatz mit dem Akronym Acr.
, das mit <acronym>...</acronym>
ausgezeichnet ist. Das einleitende Tag enthält eine eine eindeutige Id-Angabe und den Event-Handler onMouseOver
. Beim Überfahren des Elementtextes mit der Maus wird dadurch dynamisch ein title
-Attribut gesetzt, das aussagt, was die Abkürzung Acr.
bedeutet.
Das vorliegende Beispiel wird auch von Opera 5.12 interpretiert.
HTML-Referenz: siehe Element: address
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <address>...</address>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften.
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> <script type="text/javascript"> <!-- function Namen() { document.getElementsByTagName("address")[0].firstChild.nodeValue = 'Stefan Münz'; } function Text() { document.getElementsByTagName("address")[0].firstChild.nodeValue = 'SELFHTML-Redaktion'; } //--> </script> </head><body> <div>Dies alles ist von der <address onMouseOver="Namen()" onMouseOut="Text()">SELFHTML-Redaktion</address><div> </body></html> |
Das Beispiel enthält einen Textabsatz mit der Adressbezeichnung SELFHTML-Redaktion
, die mit <address>...</address>
ausgezeichnet ist. Das einleitende Tag enthält die Event-Handler onMouseOver
und onMouseOut
, die jeweils eine JavaScript- Funktion aufrufen. Die Funktion Namen()
, die bei onMouseOver
aufgerufen wird, ersetzt den Inhalt SELFHTML-Redaktion
durch den Wert Stefan Münz
. Die Funktion Text()
stellt dagegen den Originalzustand wieder her und wird bei onMouseOut
aufgerufen. Beide Funktionen greifen mit getElementsByTagName("address")[0]
auf das erste address
-Element im Dokument zu. Der jeweils neue Textinhalt des Elements wird mit node.nodeValue gesetzt (firstChild
bezeichnet den ersten Kindknoten eines Knotens).
HTML-Referenz: siehe Element: applet
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <applet>...</applet>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften sowie die folgenden eigenen Eigenschaften.
|
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> </head><body> <applet id="Ticker" code="zticker.class" width="600" height="60"> <param name="msg" value="Die Energie des Verstehens"> <param name="speed" value="5"> <param name="bgco" value="255,255,255"> <param name="txtco" value="000,000,255"> <param name="hrefco" value="255,255,255"> </applet> <form name="Form" action=""> <input type="button" value="40" onClick="document.getElementById('Ticker').height=40"> <input type="button" value="60" onClick="document.getElementById('Ticker').height=60"> </form> </body></html> |
Das Beispiel enthält ein eingebundenes Java-Applet für einen Lauftext (Ticker). Unterhalb des Applets ist ein Formular mit einem Eingabefeld notiert. Klickt der Anwender auf die Buttons, wird dynamisch die Anzeigehöhe des Java-Applets geändert, und der Lauftext ändert dabei automatisch seine Größe (sofern das Applet so programmiert ist, dass die Größe des Lauftextes von dem Attribut height=
im einleitenden <applet>
-Tag abhängig ist). Mit document.getElementById('Ticker')
wird auf das Applet zugegriffen, da es im einleitenden Tag das Attribut id="Ticker"
hat. Geändert wird sein Attribut height
.
Der Netscape 6.1 interpretiert dieses Beispiel nicht.
HTML-Referenz: siehe Element: area
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <area>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften sowie die folgenden eigenen Eigenschaften.
|
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> <script type="text/javascript"> <!-- function plus100() { document.getElementById("Verweis").coords = "101,101,349,149"; } //--> </script> </head><body> <map name="Testbild"> <area id="Verweis" shape="rect" coords="1,1,249,49" href="javascript:plus100()" title="Koordinaten" alt="Koordinaten"> </map> <img src="hypgraf.gif" width="400" height="400" usemap="#Testbild" alt="verweis-sensitive Grafik"> </body></html> |
Das Beispiel enthält eine Grafik, die auf einen map
-Bereich verweist, in dem ein verweis-sensitiver Bereich für die Grafik notiert wird. Beim Anklicken dieses verweis-sensitiven Bereichs wird die JavaScript- Funktion plus100()
aufgerufen, die im Dateikopf notiert ist. Diese Funktion ändert dynamisch die Eigenschaft coords
, indem sie ihr neue Werte zuweist. Der Effekt ist, dass der verweis-sensitive Bereich anschließend um 100 Pixel weiter nach rechts unten verlagert wird.
Das vorliegende Beispiel wird auch von Opera 5.12 interpretiert.
HTML-Referenz: siehe Element: b
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <b>...</b>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften.
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> <link id="CSS" rel="stylesheet" href="styles_1.css"> </head><body> <b id="wichtig">wichtige Aussage!</b><br> <a href="javascript:document.getElementById('wichtig').id='unwichtig'; alert(document.getElementById('unwichtig').id);">unwichtig machen!</a> </body></html> |
Das Beispiel enthält eine mit <b>...</b>
formatierte wichtige Aussage, bei der im einleitenden Tag das Attribut id="wichtig"
notiert ist. Unterhalb davon ist ein Verweis notiert, bei dessen Anklicken das id
-Attribut des b
-Elements auf den Wert unwichtig
gesetzt wird. Dazu wird mit document.getElementById('wichtig').id
auf das Attribut zugegriffen. Anschließend wird mit document.getElementById('unwichtig').id
auf den neuen Id-Wert zugegriffen, um den neuen Id-Wert zur Kontrolle in einem Meldungsfenster auszugeben.
Das vorliegende Beispiel wird auch von Opera 5.12 interpretiert.
HTML-Referenz: siehe Element: base
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <base>
haben als DOM-Objekte für den Scriptsprachenzugriff die folgenden eigenen Eigenschaften.
|
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> <base target="_self"> <script type="text/javascript"> <!-- function blankBase() { document.getElementsByTagName("base")[0].target="_blank"; } //--> </script> </head><body> <a href="news.htm">News</a><br> <a href="javascript:blankBase()">Links in neues Fenster laden</a> </body></html> |
In der Beispieldatei sind zwei Verweise notiert. Der erste ruft einfach eine andere Datei auf. Normalerweise wird das Verweisziel dabei ins gleiche Fenster geladen. Im Dateikopf ist dies mit <base id="Zielfenster" target="_self">
auch explizit bestätigt. Der zweite Verweis ruft bei Anklicken jedoch die JavaScript- Funktion blankBase()
auf, die beim base
-Element die Eigenschaft target
auf den Wert _blank
ändert, was bewirkt, dass Verweisziele dieser Datei in ein neues Fenster geladen werden.
Mit Netscape (6.1) und unter dem MS Internet Explorer 5.0 Macintosh Edition war das Beispiel mit dem base
-Element nicht nachvollziehbar. Opera 5.12 interpretiert das Beispiel dagegen.
Die Verwendung von Universaleigenschaften ist im HTML-4.0-Standard für das base
-Element nicht vorgesehen. Deshalb sollten Sie bei diesem Element die Methode document.getElementsById()
vermeiden.
HTML-Referenz: siehe Element: basefont
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <basefont>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften sowie die folgenden eigenen Eigenschaften.
|
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> <script type="text/javascript"> <!-- function machGross() { document.getElementById("ab_hier_anders").size="7"; } //--> </script> </head><body> <p>Text<br>Text<br>Text<br>Text<br>Text<br>Text<br>Text</p> <basefont id="ab_hier_anders" color="red" size=""> <p>Text<br>Text<br>Text<br>Text<br>Text<br>Text<br>Text</p> <a href="javascript:machGross()">nicht nur rot, sondern auch gross</a> </body></html> |
Das Beispiel enthält Text und zwischendrin ein basefont
-Element. Am Ende steht ein Verweis, bei dessen Anklicken die JavaScript- Funktion machGross()
aufgerufen wird. Mit getElementById("ab_hier_anders")
greift diese Funktion auf das basefont
-Element zu und ändert dessen Eigenschaft size
auf den Wert 7
.
Mit Netscape (6.1) war das Beispiel mit dem basefont
-Element nicht nachvollziehbar.
HTML-Referenz: siehe Element: bdo
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <bdo>...</bdo>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften.
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> <script type="text/javascript"> <!-- function abc2cba() { document.getElementsByTagName("bdo")[0].dir="rtl"; } //--> </script> </head><body> <bdo dir="ltr">ABCDEFGHIJKLMNOPQRSTUVWXYZ</bdo><br> <a href="javascript:abc2cba()">umkehren!</a> </body></html> |
Das Beispiel enthält ein bdo
-Element mit dem Attribut dir="ltr"
(Schriftrichtung von links nach rechts), das das Alphabet in Großbuchstaben als Inhalt hat. Unterhalb davon ist ein Verweis notiert. Beim Anklicken des Verweises wird die JavaScript- Funktion abc2cba()
aufgerufen. Diese greift mit getElementsByTagName("bdo")[0]
auf das erste bdo
-Element im Dokument zu und ändert die Schriftrichtung auf rtl
, also von rechts nach links. Das Großbuchstabenalphabet wird dadurch umgedreht.
Unter dem MS Internet Explorer 5.0 Macintosh Edition war das Beispiel nicht nachvollziehbar.
HTML-Referenz: siehe Element: big
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <big>...</big>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften.
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> <style type="text/css"> <!-- .verybig { font-size:300% } --> </style> <script type="text/javascript"> <!-- function nochmehr() { document.getElementById("biggie").className = "verybig"; } //--> </script> </head><body> <p><big id="biggie" onClick="nochmehr()">gross und stark!</big></p> </body></html> |
Das Beispiel enthält in einem Textabsatz Text, der mit <big>...</big>
ausgezeichnet ist. Im einleitenden <big>
-Tag ist der Event-Handler onClick
notiert. Beim Anklicken des Textes dieses Elements wird die JavaScript- Funktion nochmehr()
aufgerufen. Diese greift mit document.getElementById("biggie")
auf das big
-Element zu und weist ihm die im Dateikopf in einem Style-Bereich definierte Klasse verybig
zu. Der Text wird dadurch auf 300% seiner normalen Größe vergrößert.
HTML-Referenz: siehe Element: blockquote
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <blockquote>...</blockquote>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften sowie die folgende eigene Eigenschaft.
|
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> <script type="text/javascript"> <!-- function showCite() { alert(document.getElementById('w3zitat').cite); } //--> </script> </head><body> <p>Das W3-Konsortium schreibt über das DOM:</p> <blockquote id="w3zitat" cite="http://www.w3.org/TR/REC-DOM-Level-1/introduction.html" onMouseOver="showCite()"> The Document Object Model (DOM) is an application programming interface (API) for valid HTML and well-formed XML documents. </blockquote> </body></html> |
Das Beispiel enthält ein mit <blockquote>...</blockquote>
ausgezeichnetes Zitat, in dessen einleitendem Tag auch den URI der Quelle mit dem Attribut cite=
angegeben ist. Ferner ist dort der Event-Handler onMouseOver
notiert, der bewirkt, dass beim Überfahren des Zitats mit der Maus die JavaScript- Funktion showCite()
aufgerufen wird. Diese greift mit document.getElementById('w3zitat')
auf das blockquote
-Element zu und gibt in einem Meldungsfenster den Wert des cite
-Attributs aus.
Opera 5.12 gibt in diesem Beispiel undefined zurück.
HTML-Referenz: siehe Element: body
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <body>...</body>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften sowie die folgenden eigenen Eigenschaften.
|
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> <script type="text/javascript"> <!-- function WerteSetzen() { document.getElementsByTagName("body")[0].text = document.Formular.Text.value; document.getElementsByTagName("body")[0].link = document.Formular.Link.value; document.getElementsByTagName("body")[0].vLink = document.Formular.VLink.value; document.getElementsByTagName("body")[0].bgColor = document.Formular.BgColor.value; } //--> </script> </head><body> <h1>Ein dynamisches Dokument</h1> <a href="news.htm"><b>Ein Link zu den News</b></a> <form name="Formular" action=""> <pre> Textfarbe: <input type="text" size="7" name="Text"> Linkfarbe: <input type="text" size="7" name="Link"> Linkfarbe (besucht): <input type="text" size="7" name="VLink"> Hintergundfarbe: <input type="text" size="7" name="BgColor"> Einstellungen: <input type="button" value="Testen!" onClick="WerteSetzen()"> </pre> </form> </body></html> |
Die Beispieldatei enthält im body
-Bereich eine Überschrift, einen Link und ein Formular mit verschiedenen Eingabefeldern. In den Eingabefeldern kann der Anwender neue Basisfarben für das Dokument einstellen - typische Eingabewerte sind also hexadezimale Angaben wie #FFFFCC
oder Farbwörter wie maroon
. Beim Anklicken des Buttons mit der Aufschrift Testen
wird die JavaScript- Funktion WerteSetzen()
aufgerufen, die im Dateikopf notiert ist. Diese greift mit document.getElementsByTagName("body")[0]
auf das "erste body
-Element" der Datei zu und weist den entsprechenden Eigenschaften die eingegebenen Werte aus dem Formular zu. Dadurch verändern sich die Basisfarben des Dokuments.
Sie können im MS Internet Explorer und im Netscape 6 zusätzlich auf die Eigenschaften offsetTop
, offsetLeft
, offsetWidth
, offsetHeight
, offsetParent
und innerHTML
zugreifen. Im Netscape 6 stehen diese Eigenschaften jedoch erst nach dem Laden des Dokumentes zur Verfügung.
Beim MS Internet Explorer sind auf das body
-Objekt die meisten Eigenschaften des all-Objekts anwendbar. Der Grund ist, dass body
im Internet Explorer schon vor Einführung der DOM-Syntax als Objektname existierte.
Unter dem MS Internet Explorer 5.0 Macintosh Edition war das Beispiel nicht vollständig nachvollziehbar und führte teilweise zu einem sehr seltsamen Verhalten.
HTML-Referenz: siehe Element: br
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <br>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften sowie die folgende eigene Eigenschaft.
|
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> </head><body> <img src="../../../src/logo.gif" width="106" height="109" border="0" align="left" alt="Logo" onClick="document.getElementById('Umbruch').clear='all'"> Dieser Text fliesst um das Logo herum, weil dies im align-Attribut des Logos so angegeben ist.<br id="Umbruch"> Gilt das auch bei diesem Text? </body></html> |
Das Beispiel enthält eine Grafik, bei der durch die Angabe align="left"
festgelegt wird, dass der nachfolgende Text rechts um die Grafik fließt. Der Text enthält einen Zeilenumbruch, markiert durch <br>
. Die Grafik enthält einen Event-Handler onClick
, der bewirkt, dass beim Anklicken der Grafik mit document.getElementById('Umbruch')
auf das Zeilenumbruch-Element zugegriffen wird. Ihm wird die Eigenschaft clear
mit dem Wert all
zugewiesen. Der Text unterhalb des Umbruchs rutscht bei einem Klick auf die Grafik unter die Grafik, da <br clear="all">
die Textfortsetzung unterhalb der Grafik bewirkt.
HTML-Referenz: siehe Element: button
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <button>...</button>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften sowie die folgenden eigenen Eigenschaften.
|
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> <script language="JavaScript" type="text/javascript"> <!-- function ZeitAufButton() { var jetzt = new Date(); var Zeit = jetzt.getTime(); document.getElementsByName("Zeitbutton")[0].value = Zeit; document.getElementsByName("Zeitbutton")[0].firstChild.nodeValue = Zeit; } //--> </script> </head><body> <form name="Formular" action=""> <button name="Zeitbutton" value="" onClick="ZeitAufButton()">Zeit!</button> </form> </body></html> |
Das Beispiel definiert in einem Formular einen Button, der den Event-Handler onClick
enthält. Beim Anklicken des Buttons wird deshalb die JavaScript- Funktion ZeitAufButton()
aufgerufen, die im Dateikopf notiert ist. Diese Funktion ermittelt mit Hilfe des Date-Objekts den aktuellen Zeitpunkt in Millisekunden und weist diesen ermittelten Wert sowohl dem Absendewert des Buttons als auch dessen Aufschrift zu. Dazu wird mit document.getElementsByName("Zeitbutton")[0]
auf das erste Element mit dem Attribut name="Zeitbutton"
zugegriffen. Der Absendewert durch Zuweisen des Wertes von Zeit an die Eigenschaft value
geändert. Für die Buttonaufschrift muss der Wert des ersten Kindknotens (firstChild.nodeValue
) des Buttons geändert werden. Das Beispiel bewirkt, dass bei jedem Anklicken des Buttons die Millisekundenzeit auf der Button-Aufschrift aktualisiert wird.
HTML-Referenz: siehe Element: caption
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <caption>...</caption>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften sowie die folgende eigene Eigenschaft.
|
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> <script type="text/javascript"> <!-- function Wechseln() { if(document.getElementById("THeader").align == "left") document.getElementById("THeader").align = "right"; else document.getElementById("THeader").align = "left"; } //--> </script> </head><body> <table border="5" cellspacing="4"> <caption id="THeader" align="left" onClick="Wechseln()"><b>Spielstand:</b></caption> <tr> <td>Hans Moosreiner:</td><td>5 Punkte</td> </tr><tr> <td>Lisa Wohlthu:</td><td>3 Punkte</td> </tr> </table> </body></html> |
Das Beispiel enthält eine kleine Tabelle mit einer Tabellenüberschrift, die durch <caption>...</caption>
ausgezeichnet ist. Das einleitende Tag enthält ferner den Event-Handler onClick
. Dadurch wird beim Anklicken der Tabellenüberschrift die JavaScript- Funktion Wechseln()
aufgerufen, die im Dateikopf notiert ist. Diese Funktion greift mit document.getElementById("THeader")
auf die Tabellenüberschrift zu und fragt ab, ob deren align
-Eigenschaft den Wert left
hat. Wenn ja, wird er auf right
geändert, wenn nein (also wenn er auf right
gesetzt ist), wird er wieder auf left
gesetzt. Auf diese Weise springt die Tabellenüberschrift bei jedem Anklicken zur anderen Seite (links bzw. rechts).
Mit Netscape (6.1) und dem MS Internet Explorer 5.0 Macintosh Edition war das Beispiel mit dem caption
-Element nicht nachvollziehbar.
HTML-Referenz: siehe Element: center
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <center>...</center>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften.
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> </head><body> <center id="zentriert" title="Das ist wirklich zentriert!" onMouseover="alert(document.getElementById('zentriert').title)"> <h1>Das ist zentriert</h1> <h2>Das ist zentriert</h2> <h3>Das ist zentriert</h3> </center> </body></html> |
Das Beispiel enthält einen mit <center>...</center>
ausgezeichneten Bereich, innerhalb dessen alles zentriert dargestellt wird. Im einleitenden Tag ist der Event-Handler onMouseOver
notiert. Beim Überfahren des zentrierten Bereichs wird ein Meldungsfenster ausgegeben, das den Wert des Attributs title
ausgibt. Dazu wird mit document.getElementById('zentriert')
auf das Element zugegriffen.
Opera 5.12 interpretiert dieses Beispiel ebenfalls.
HTML-Referenz: siehe Element: cite
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <cite>...</cite>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften.
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> </head><body> <cite id="Zitat" title="Zitat von Kafka" onMouseOver="alert(document.getElementById('Zitat').title)"> Die Krähen behaupten, eine einzige Krähe könne den Himmel zerstören. Das ist zweifellos, beweist aber nichts gegen den Himmel, denn Himmel bedeutet eben: Unmöglichkeit von Krähen. </cite> </body></html> |
Das Beispiel enthält einen mit <cite>...</cite>
ausgezeichneten Bereich. Im einleitenden Tag ist der Event-Handler onMouseOver
notiert. Beim Überfahren des zentrierten Bereichs wird ein Meldungsfenster ausgegeben, das den Wert des Attributs title
ausgibt. Dazu wird mit document.getElementById('Zitat')
auf das Element zugegriffen.
Opera 5.12 interpretiert dieses Beispiel ebenfalls.
HTML-Referenz: siehe Element: code
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <code>...</code>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften.
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> <style type="text/css"> <!-- .farbig { color:blue } --> </style> <script language="JavaScript" type="text/javascript"> <!-- function farbig() { document.getElementById("Perlbeispiel").className = "farbig"; } //--> </script> </head><body> <p><code id="Perlbeispiel" onClick="farbig()">$Text =~ s/[a-z]| //gi;</code></p> </body></html> |
Das Beispiel enthält in einem Textabsatz Perl-Code, der mit <code>...</code>
ausgezeichnet ist. Im einleitenden <code>
-Tag ist der Event-Handler onClick
notiert. Beim Anklicken des Textes dieses Elements wird die JavaScript- Funktion farbig()
aufgerufen. Diese greift mit document.getElementById("Perlbeispiel")
auf das code
-Element zu und weist ihm die im Dateikopf in einem Style-Bereich definierte Klasse farbig
zu. Der Text wird dadurch blau dargestellt.
HTML-Referenz: siehe Element: col
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <col>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften sowie die folgenden eigenen Eigenschaften.
|
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> <script type="text/javascript"> <!-- function gleichbreit() { for(i = 0; i < document.getElementsByTagName("col").length; i++) document.getElementsByTagName("col")[i].width = "320"; } //--> </script> </head><body> <table border="1"> <colgroup> <col width="80"> <col width="100"> <col width="320"> </colgroup> <tr> <td>1. Zeile, 1. Spalte</td> <td>1. Zeile, 2. Spalte</td> <td>1. Zeile, 3. Spalte</td> </tr> </table> <a href="javascript:gleichbreit()">Spalten gleich breit machen!</a> </body></html> |
Das Beispiel enthält eine Tabelle mit drei Spalten, deren Breiten mit col
-Elementen unterschiedlich vordefiniert werden. Unterhalb der Tabelle ist ein Verweis notiert, bei dessen Anklicken die JavaScript- Funktion gleichbreit()
aufgerufen wird. Diese greift in einer for-Schleife der Reihe nach mit document.getElementsByTagName("col")
auf die einzelnen col
-Elemente zu und weist ihnen jeweils den Wert 320
für die Eigenschaft width
zu. Dadurch wird die Tabelle dynamisch neu angezeigt, und zwar mit drei gleich breiten Spalten.
Unter dem MS Internet Explorer 5.0 Macintosh Edition war das Beispiel nicht nachvollziehbar.
HTML-Referenz: siehe Element: colgroup
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <colgroup>...</colgroup>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften sowie die folgenden eigenen Eigenschaften.
|
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> <script type="text/javascript"> <!-- function ausrichten() { document.getElementById("Tabellenspalten").align = "right"; } //--> </script> </head><body> <table border="1"> <colgroup id="Tabellenspalten"> <col width="200"> </colgroup> <tr><td>Hansi</td></tr> <tr><td>Willi</td></tr> <tr><td>Manni</td></tr> </table> <a href="javascript:ausrichten()">ausrichten!</a> </body></html> |
Das Beispiel enthält eine Tabelle mit mit einer colgroup
-Definition. Unterhalb der Tabelle ist ein Verweis notiert, bei dessen Anklicken die JavaScript- Funktion ausrichten()
aufgerufen wird. Diese greift mit document.getElementById("Tabellenspalten")
auf das colgroup
-Element zu und weist ihm den Wert right
für die Eigenschaft align
zu. Dadurch wird die Tabelle dynamisch neu angezeigt, und alle Zellen werden rechtsbündig ausgerichtet.
Mit Netscape (6.1) und dem MS Internet Explorer 5.0 Macintosh Edition war das Beispiel nicht nachvollziehbar. Aber auch der Internet Explorer 5.x interpretiert die Eigenschaften von colgroup
nur unvollständig.
HTML-Referenz: siehe Element: dd
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <dd>...</dd>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften.
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> <script type="text/javascript"> <!-- function Titel() { for(var i = 0; i < document.getElementsByTagName("dt").length; i++) document.getElementsByTagName("dd")[i].title = document.getElementsByTagName("dt")[i].firstChild.nodeValue; } //--> </script> </head><body> <dl> <dt>*.bmp</dt><dd>Bitmap-Grafiken</dd> <dt>*.html</dt><dd>Webseiten-Dateien</dd> <dt>*.css</dt><dd>Style-Dateien für Webseiten</dd> </dl> <a href="javascript:Titel()">Titel</a> </body></html> |
Das Beispiel enthält eine Definitionsliste mit drei Einträgen. Unterhalb davon ist ein Verweis notiert. Beim Anklicken des Verweises wird die JavaScript- Funktion Titel()
aufgerufen, die im Dateikopf notiert ist. Diese greift in einer for-Schleife der Reihe nach auf alle dt
-Elemente zu und weist den zugehörigen dd
-Elementen den Inhalt der dt
-Elemente als title
-Attribut zu.
HTML-Referenz: siehe Element: del
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <del>...</del>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften sowie die folgenden eigenen Eigenschaften.
|
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> <script type="text/javascript"> <!-- function Grund() { document.getElementById("HTMLVersion").cite = "http://www.w3.org/TR/html401"; } //--> </script> </head><body onLoad="Grund()"> <p><del id="HTMLVersion" onMouseOver="alert(document.getElementById('HTMLVersion').cite)"> die aktuelle HTML-Version ist 2.0</del></p> </body></html> |
Das Beispiel enthält eine mit <del>...</del>
gelöschte Änderungsmarkierung. Nachdem die Datei geladen ist (Event-Handler onLoad
im einleitenden <body>
-Tag), wird die JavaScript- Funktion Grund()
aufgerufen, die im Dateikopf notiert ist. Diese greift mit document.getElementById("HTMLVersion")
auf das del
-Element zu und weist ihm die im HTML-Code nicht notierte Eigenschaft cite
mit einem Wert zu. Das del
-Element verfügt zur Kontrolle über einen Event-Handler onMouseOver
. Beim Überfahren des markierten Textes wird dadurch ein Meldungsfenster angezeigt, das den aktuellen Wert der Eigenschaft cite
ausgibt.
Opera 5.12 erlaubt nur einen lesenden Zugriff auf diese Eigenschaft.
HTML-Referenz: siehe Element: dfn
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <dfn>...</dfn>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften.
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> </head><body> <p><dfn id="Definition" title="Dies ist eine Definition!" onMouseOver="alert(document.getElementById('Definition').title)"> Ein Uhu ist ein Vogel und kein Kleber</dfn></p> </body></html> |
Das Beispiel enthält eine mit <dfn>...</dfn>
ausgezeichnete Definition. Beim Überfahren mit der Maus (onMouseOver
) wird ein Meldungsfenster ausgegeben, das den Wert des title
-Attributs des dfn
-Elements ausgibt. Dazu wird mit document.getElementById('Definition')
auf das Element zugegriffen.
Das vorliegende Beispiel wird auch von Opera 5.12 interpretiert.
HTML-Referenz: siehe Element: dir
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <dir>...</dir>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften sowie die folgende eigene Eigenschaft.
|
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> <script type="text/javascript"> <!-- function zeigKompakt() { document.getElementsByTagName("dir")[0].compact = true; } //--> </script> </head><body> <dir onMouseOver="zeigKompakt()"> <li>Eigene Dateien</li> <li>Programme</li> <li>Windows</li> <li>temp</li> </dir> </body></html> |
Das Beispiel enthält eine Verzeichnisliste. Beim Überfahren der Liste mit der Maus (onMouseOver
) wird die JavaScript- Funktion zeigKompakt()
aufgerufen, die im Dateikopf notiert ist. Die Funktion greift mit document.getElementsByTagName("dir")[0]
auf das erste dir
-Element in der Datei zu und setzt seine Eigenschaft compact
auf den Wert true
("wahr"). Dadurch wird die gesamte Liste in kompakter Schrift dargestellt.
Weder Netscape noch Internet Explorer interpretieren das HTML-Attribut compact
.
HTML-Referenz: siehe Element: div
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <div>...</div>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften sowie die folgende eigene Eigenschaft.
|
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> <style type="text/css"> <!-- div { border:solid 3px red; padding:10px; } --> </style> <script type="text/javascript"> <!-- function ausrichten() { document.getElementById("zweiter").align = "center"; document.getElementById("dritter").align = "right"; } //--> </script> </head><body> <div id="erster"><h1>Erster Bereich</h1><p>mit etwas Text</p></div> <hr> <div id="zweiter"><h1>Zweiter Bereich</h1><p>mit etwas Text</p></div> <hr> <div id="dritter"><h1>Dritter Bereich</h1><p>mit etwas Text</p></div> <a href="javascript:ausrichten()">ausrichten!</a> </body></html> |
Das Beispiel enthält insgesamt drei div
-Bereiche. Unterhalb davon ist ein Verweis notiert. Beim Anklicken des Verweises wird die JavaScript- Funktion ausrichten()
aufgerufen. Diese Funktion ändert für den zweiten und dritten der Bereiche die Ausrichtung auf "zentriert" bzw. "rechts". Dazu wird mit document.getElementById("zweiter")
auf den zweiten Bereich zugegriffen und mit document.getElementById("dritter")
auf den dritten. Alle Elemente, die innerhalb der Bereiche notiert sind, werden dynamisch neu ausgerichtet.
HTML-Referenz: siehe Element: dl
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <dl>...</dl>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften sowie die folgende eigene Eigenschaft.
|
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> <script type="text/javascript"> <!-- function zeigKompakt() { document.getElementsByTagName("dl")[0].compact = true; } //--> </script> </head><body> <dl onMouseOver="zeigKompakt()"> <dt>User' Guide</dt><dd>Benutzerhandbuch</dd> <dt>User Instructions</dt><dd>Bedienungsanleitung</dd> </dl> </body></html> |
Das Beispiel enthält eine Definitionsliste. Beim Überfahren der Liste mit der Maus (onMouseOver
) wird die JavaScript- Funktion zeigKompakt()
aufgerufen, die im Dateikopf notiert ist. Die Funktion greift mit document.getElementsByTagName("dl")[0]
auf das erste dl
-Element in der Datei zu und setzt seine Eigenschaft compact
auf den Wert true
("wahr"). Dadurch wird die gesamte Liste in kompakter Schrift dargestellt.
Weder Netscape noch Internet Explorer interpretieren das HTML-Attribut compact
.
HTML-Referenz: siehe Element: dt
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <dt>...</dt>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften.
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> <style type="text/css"> <!-- .hervorgehoben { font-weight:bold; color:red; } --> </style> <script type="text/javascript"> <!-- function Wechseln(x) { if(document.getElementsByTagName("dt")[x].className == "") document.getElementsByTagName("dt")[x].className = "hervorgehoben"; else document.getElementsByTagName("dt")[x].className = ""; } //--> </script> </head><body> <dl> <dt class="" onClick="Wechseln(0)">User' Guide</dt><dd>Benutzerhandbuch</dd> <dt class="" onClick="Wechseln(1)">User Instructions</dt><dd>Bedienungsanleitung</dd> </dl> </body></html> |
Das Beispiel enthält eine Definitionsliste. Jedes der dt
-Elemente enthält eine leere Style-Klassenzuweisung und den Event-Handler onClick
. Beim Anklicken der Elemente wird jeweils die JavaScript- Funktion Wechseln()
aufgerufen, die im Dateikopf notiert ist. Diese Funktion greift mit document.getElementsByTagName("dt")[x]
auf das jeweilige Element zu - x
ist dabei ein Parameter dafür, das wie vielte Element dieses Typs in der Datei gemeint ist. Die dt
-Elemente übergeben der Funktion den entsprechenden Parameter beim Aufruf mit Wechseln(0)
bzw. Wechseln(1)
. Das Beispiel bewirkt, dass dem betroffenen dt
-Element beim ersten Anklicken der Klassenname hervorgehoben
zugewiesen wird, und beim nächsten Anklicken wieder eine leere Klasse. Die Klasse hervorgehoben
, die im Dateikopf in einem Style-Bereich definiert ist, bewirkt, dass das Element fett und rot dargestellt wird.
Netscape 6.1 interpretiert dieses Beispiel nicht.
HTML-Referenz: siehe Element: em
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <em>...</em>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften.
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> <style type="text/css"> <!-- .mitVielGefuehl { font-family:Lucida Calligraphy; font-size:150%; color:maroon; } --> </style> <script type="text/javascript"> <!-- function xem() { document.getElementById("Herzschmerz").className = "mitVielGefuehl"; } function em() { document.getElementById("Herzschmerz").className = ""; } //--> </script> </head><body> <p>Das ist Text, der sich <em id="Herzschmerz" onMouseOver="xem()" onMouseOut="em()">vor Herzschmerz kaum retten kann</em>.</p> </body></html> |
Das Beispiel enthält einen Satz, von dem ein Teil mit <em>...</em>
ausgezeichnet ist. Das einleitende <em>
-Tag enthält die Event-Handler onMouseOver
und onMouseOut
. In einem Fall wird die JavaScript- Funktion xem()
aufgerufen, im anderen die Funktion em()
. Beide Funktionen greifen mit document.getElementById("Herzschmerz")
auf das em
-Element zu und weisen einmal den Style-Klassennamen mitVielGefuehl
und einmal einen leeren Klassennamen zu. Die CSS-Klasse mitVielGefuehl
ist im Dateikopf definiert. Beim Überfahren des em
-Elements mit der Maus wird der Text im Element dynamisch stark hervorgehoben.
HTML-Referenz: siehe Element: fieldset
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <fieldset>...</fieldset>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften sowie die folgende eigene Eigenschaft.
|
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> <script type="text/javascript"> <!-- function Hinweis() { if(document.getElementById("Absender").form != null) alert("Geben Sie Vornamen und Zunamen in jedem Fall an!"); } //--> </script> </head><body bgcolor="#EEEEEE"> <form name="Formular" action=""> <fieldset id="Absender" onMouseOver="Hinweis()"> <legend>Absender</legend> <table><tr> <td align="right">Vorname:</td> <td><input type="text" size="40" maxlength="40"></td> </tr><tr> <td align="right">Zuname:</td> <td><input type="text" size="40" maxlength="40"></td> </tr></table> </fieldset> </form> </body></html> |
Das Beispiel enthält ein Formular mit einem fieldset
-Bereich. Im einleitenden <fieldset>
-Tag ist der Event-Handler onMouseOver
notiert, der die JavaScript- Funktion Hinweis()
aufruft, die im Dateikopf definiert ist.
Mit if(document.getElementById("Absender").form != null)
fragt die Funktion ab, ob die Eigenschaft form
einen Wert hat. Wenn der Wert ungleich null
ist, bedeutet dies, dass das fieldset
-Element wie vorgeschrieben innerhalb eines Formulars vorkommt. In diesem Fall wird eine Meldung ausgegeben.
Der MS Internet Explorer interpretiert die Eigenschaft form
erst ab Version 6.0(beta).
HTML-Referenz: siehe Element: font
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <font>...</font>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften sowie die folgenden eigenen Eigenschaften.
|
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> <script language="JavaScript" type="text/javascript"> <!-- var sizes = new Array ("1","2","3","4","5","6","7"); var colors = new Array("#FF0000","#0000FF","#009900","#CC00CC"); var faces = new Array("Arial","Tahoma","Wide Latin"); function Spielen() { var s = parseInt((Math.random() * 100) % 7); var c = parseInt((Math.random() * 100) % 4); var f = parseInt((Math.random() * 100) % 3); var i = parseInt((Math.random() * 100) % 7); document.getElementsByTagName("font")[i].size = sizes[s]; document.getElementsByTagName("font")[i].color = colors[c]; document.getElementsByTagName("font")[i].face = faces[f]; window.setTimeout("Spielen()",1000); } //--> </script> </head><body onLoad="Spielen()"> <p> <font>So viel verspielter Text, o Sophie!</font><br> <font>So viel verspielter Text, o Sophie!</font><br> <font>So viel verspielter Text, o Sophie!</font><br> <font>So viel verspielter Text, o Sophie!</font><br> <font>So viel verspielter Text, o Sophie!</font><br> <font>So viel verspielter Text, o Sophie!</font><br> <font>So viel verspielter Text, o Sophie!</font><br> </p> </body></html> |
Das Beispiel enthält insgesamt sieben Texte, die mit font
-Elementen ausgezeichnet sind. Keines der font
-Elemente enthält allerdings in HTML irgendwelche Attribute. Nachdem das Dokument geladen ist (Event-Handler onLoad
im einleitenden <body>
-Tag), wird die JavaScript- Funktion Spielen()
aufgerufen. Zuvor wurden bereits diverse Arrays angelegt. Die Funktion Spielen ermittelt mittels Math.random() Zufallszahlen und trimmt diese mit Hilfe von Multiplikation mit 100, Modulodivision und Anwendung der Funktion parseInt() so, dass ganzzahlige Zufallszahlen erzeugt werden. Diese werden als Index für die zuvor definierten Arrays verwendet. Solchermaßen ausgerüstet, greift die Funktion mit document.getElementsByTagName("font")[i]
zufällig auf eines der font
-Elemente zu und weist ihm die ebenfalls zufällig ermittelten Werte aus den Arrays für die Eigenschaften size
, color
und face
zu. Am Ende wartet die Funktion eine Sekunde ( window.setTimeout()) und ruft sich dann selber wieder auf. Dadurch ergibt sich ein endloses Spiel an zufälligen Textänderungen.
HTML-Referenz: siehe Element: form
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <form>...</form>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften sowie die folgenden eigenen Eigenschaften und Methoden.
|
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> </head><body> <form name="Formular" action="datei.htm" method="get"> <p> <input name="Text" type="text"><br> [<a href="javascript:document.getElementsByName('Formular')[0].submit()"><b>Absenden</b></a>] [<a href="javascript:document.getElementsByName('Formular')[0].reset()"><b>Abbrechen</b></a>] </p> </form> </body></html> |
Das Beispiel enthält ein Formular mit zwei Verweisen anstelle der sonst üblichen Submit- und Reset-Buttons. Der eine Verweis führt die submit()
-Methode aus, der andere die reset()
-Methode. Beide Verweise greifen dazu mit document.getElementsByName('Formular')[0]
auf das erste Element mit dem Namen Formular
zu.
Dieses Beispiel funktioniert auch in Opera 5.12. In lokaler Umgebung außerhalb des HTTP-Protokolls (file:
) wird jedoch nach dem Absenden der Quellcode der Zieldatei angezeigt.
HTML-Referenz: siehe Element: frame
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <frame>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften sowie die folgenden eigenen Eigenschaften.
|
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> <script type="text/javascript"> <!-- function nullRand() { document.getElementById("F1").marginHeight = "0"; document.getElementById("F1").marginWidth = "0"; } --> </script> </head> <frameset cols="50%,50%"> <frame id="F1" src="frame1.htm" onLoad="nullRand()"> <frame id="F2" src="frame2.htm"> </frameset> </html> |
Das Beispiel definiert ein Frameset mit zwei Frames. Beim ersten frame
-Element ist der Event-Handler onLoad
notiert. Nach dem Laden des Frame-Fensters wird die JavaScript- Funktion nullRand()
aufgerufen, die im Dateikopf notiert ist. Die Funktion greift mit document.getElementById("F1")
auf das erste frame
-Element zu und setzt dessen Eigenschaften für marginHeight
und marginWidth
auf 0.
Das Beispiel war weder mit Netscape noch mit dem Internet Explorer nachvollziehbar.
HTML-Referenz: siehe Element: frameset
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <frameset>...</frameset>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften sowie die folgenden eigenen Eigenschaften.
|
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> <script type="text/javascript"> <!-- function dreiFenster() { document.getElementById("Fenster").cols = "33%,34%,33%"; var F3 = document.createElement("frame"); F3.setAttribute("src","frame3.htm"); document.getElementById("Fenster").appendChild(F3); } --> </script> </head> <frameset id="Fenster" cols="50%,50%" onLoad="dreiFenster()"> <frame src="frame1.htm"> <frame src="frame2.htm"> </frameset> </head></html> |
Das Beispiel definiert ein Frameset mit zwei Frames. Nachdem das Frameset geladen ist (Event-Handler onLoad
im einleitenden <frameset>
-Tag), wird die Funktion dreiFenster()
aufgerufen. Diese Funktion greift mit document.getElementById("Fenster")
auf das frameset
-Element zu und setzt dessen Eigenschaft cols
neu - und zwar so, dass nun drei Spalten definiert werden. Dann wird mit document.createElement() ein neues Element erzeugt, dem mit setAttribute() eine anzuzeigende Datei zugewiesen wird. Anschließend wird der neue Elementknoten mit appendChild() als letztes neues Kindelement in das frameset
-Element eingefügt.
Das Beispiel war mit dem Internet Explorer 5.0 nur teilweise nachvollziehbar.
HTML-Referenz: siehe Element: h1-h6
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <h1>...</h1>
usw. haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften sowie die folgende eigene Eigenschaft.
|
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> <script type="text/javascript"> <!-- function rechtslinks() { for(var i = 0; i < document.getElementsByTagName("h1").length; i++ ) { if(document.getElementsByTagName("h1")[i].align == "left") document.getElementsByTagName("h1")[i].align = "right"; else document.getElementsByTagName("h1")[i].align = "left"; } } --> </script></head><body> <h1 align="left">Kapitel 1</h1> <p>viel Text</p> <h1 align="left">Kapitel 2</h1> <p>viel Text</p> <h1 align="left">Kapitel 3</h1> <p>und ein <a href="javascript:rechtslinks()">Ausrichtungsverweis</a></p> </body></html> |
Das Beispiel enthält insgesamt drei Überschriften erster Ordnung. Ganz unten ist ein Verweis notiert, bei dessen Anklicken die JavaScript- Funktion rechtslinks()
aufgerufen wird, die im Dateikopf steht. Diese greift in einer for-Schleife der Reihe nach mit document.getElementsByTagName("h1")[i]
auf alle h1
-Elemente des Dokuments zu. Für jedes dieser Elemente wird abgefragt, ob seine Eigenschaft align
den Wert left
hat. Wenn ja, wird er auf right
gesetzt, wenn nein, wird er wieder auf left
gesetzt. Bei jedem Anklicken des Verweises ändern also alle drei Überschriften ihre Ausrichtung.
Das Beispiel ist im Netscape 6.1 nicht nachvollziehbar.
HTML-Referenz: siehe Element: head
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
Das HTML-Element <head>...</head>
hat als DOM-Objekt für den Scriptsprachenzugriff Universaleigenschaften sowie die folgende eigene Eigenschaft.
|
Anzeigebeispiel: So sieht's aus
<html><head profile="http://localhost/profiles/mydocs"><title>Test</title> </head><body> <script type="text/javascript"> <!-- document.write("Verwendetes Profil: " + document.getElementsByTagName("head")[0].profile); //--> </script> </body></html> |
Das Beispiel enthält im einleitenden <head>
-Tag eine profile
-Angabe. Innerhalb des Dokuments wird diese Angabe mit document.write()
ins Dokument geschrieben. Dabei wird mit document.getElementsByTagName("head")[0]
auf das head
-Element zugegriffen.
Die Verwendung anderer Universaleigenschaften als dir
und lang
ist im HTML-4.0-Standard für das head
-Element nicht vorgesehen. Deshalb sollten Sie bei diesem Element die Methode document.getElementsById()
vermeiden.
HTML-Referenz: siehe Element: hr
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <hr>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften sowie die folgenden eigenen Eigenschaften.
|
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> <script language="JavaScript" type="text/javascript"> <!-- var Dicke = 3; function dicker() { Dicke += Dicke; document.getElementById("Linie").size = Dicke; } --> </script></head><body> <hr id="Linie" noshade size="3" onClick="dicker()"> </body></html> |
Das Beispiel enthält eine Trennlinie der Dicke 3 (size="3"
). Das hr
-Element enthält einen Event-Handler onClick
. Beim Anklicken der Trennlinie wird die JavaScript- Funktion dicker()
aufgerufen, die im Dateikopf notiert ist. Diese Funktion erhöht den Wert der Variablen Dicke
um sich selbst und greift dann mit document.getElementById("Linie")
auf das hr
-Element zu, um dessen Eigenschaft size
mit dem neuen Wert von Dicke
zu belegen. Die Linie wird also bei jedem Anklicken deutlich dicker.
HTML-Referenz: siehe Element: html
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
Das HTML-Element <html>...</html>
hat als DOM-Objekt für den Scriptsprachenzugriff Universaleigenschaften sowie die folgenden eigenen Eigenschaften und Methoden.
|
Anzeigebeispiel: So sieht's aus
<html version="-//W3C//DTD HTML 4.01 Transitional//EN"> <head><title>Test</title> </head><body> <script type="text/javascript"> <!-- document.write("Dies ist in HTML " + document.getElementsByTagName("html")[0].version + " geschrieben!"); //--> </script> </body></html> |
Das Beispiel enthält im einleitenden <html>
-Tag eine version
-Angabe. Innerhalb des Dokuments wird diese Angabe mit document.write()
ins Dokument geschrieben. Dabei wird mit document.getElementsByTagName("html")[0]
auf das html
-Element zugegriffen.
Die Verwendung anderer Universaleigenschaften als dir
und lang
ist im HTML-4.0-Standard für das html
-Element nicht vorgesehen. Deshalb sollten Sie bei diesem Element die Methode document.getElementsById()
vermeiden.
HTML-Referenz: siehe Element: i
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <i>...</i>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften.
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> <style type="text/css"> </style> <script type="text/javascript"> <!-- function set_normal() { document.getElementById("schief").className = "normal"; } //--> </script> </head><body> <i id="schief">schiefe Aussage!</i><br> <a href="javascript:set_normal()">gerade machen!</a> </body></html> |
Das Beispiel enthält einen mit <i>...</i>
formatierten Text, und darunter einen Verweis. Beim Anklicken des Verweises wird die JavaScript- Funktion set_normal()
aufgerufen, die im Dateikopf notiert ist. Diese Funktion greift mit document.getElementById("schief")
auf das i
-Element zu und setzt dessen Universaleigenschaft className
neu. Die entsprechende Klasse normal
ist im Dateikopf in einem Style-Bereich definiert.
HTML-Referenz: siehe Element: iframe
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <iframe>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften sowie die folgenden eigenen Eigenschaften.
|
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> <script type="text/javascript"> <!-- function groesser() { document.getElementById("Frame").width = "600"; document.getElementById("Frame").height = "400"; } //--> </script></head><body> <iframe id="Frame" src="frame1.htm" width="400" height="300"></iframe> <p><a href="javascript:groesser()">Anzeigefenster erweitern</a></p> </body></html> |
Das Beispiel definiert einen eingebetteten Frame. Unterhalb davon ist ein Verweis notiert. Beim Anklicken des Verweises wird die JavaScript- Funktion groesser()
aufgerufen, die im Dateikopf notiert ist. Diese greift mit document.getElementById("Frame")
auf das iframe
-Element zu und ändert dessen Eigenschaften width
und height
. Das eingebettete Framefenster wird dadurch dynamisch vergrößert.
HTML-Referenz: siehe Element: img
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <img>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften sowie die folgenden eigenen Eigenschaften.
|
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> <script type="text/javascript"> <!-- function neuesBild() { if(document.getElementById("Bild").src.indexOf("iso8859_1.gif") > -1) { document.getElementById("Bild").src = "../../../inter/iso8859_2.gif"; document.getElementById("Bild").title = "Bild 2"; return; } if(document.getElementById("Bild").src.indexOf("iso8859_2.gif") > -1) { document.getElementById("Bild").src = "../../../inter/iso8859_3.gif"; document.getElementById("Bild").title = "Bild 3"; return; } if(document.getElementById("Bild").src.indexOf("iso8859_3.gif") > -1) { document.getElementById("Bild").src = "../../../inter/iso8859_1.gif"; document.getElementById("Bild").title = "Bild 1"; return; } } //--> </script></head><body> <img id="Bild" src="../../../inter/iso8859_1.gif" width="289" height="302" alt="Bild 1" title="Bild 1"><br> <a href="javascript:neuesBild()">neues Bild</a> </body></html> |
Das Beispiel enthält eine Grafikreferenz für eine Ressource namens 8859_1.gif
. Unterhalb davon ist ein Verweis notiert. Bei Anklicken des Verweises wird die JavaScript- Funktion neuesBild()
aufgerufen, die im Dateikopf notiert ist. Diese Funktion fragt mit document.getElementById("Bild").src.indexOf(...)
ab, welches Bild gerade angezeigt wird (siehe auch indexOf). Abhängig davon werden die beiden Eigenschaften src
und title
mit neuen Werten belegt. Das Beispiel bewirkt, dass bei jedem Anklicken des Verweises ein neues Bild angezeigt wird.
In der Eigenschaft src
ist der vollständige URI des Bildes gespeichert, und nicht die eventuell relative Angabe, der bei <img src=>
zugewiesen wurde. Deshalb muss der Inhalt von src
auch mit einer Zeichenkettenmethode wie indexOf()
durchsucht werden, um nach einem Dateinamen zu suchen.
In Netscape 6.x sind die Eigenschaften hspace
, vspace
und border
fehlerhaft implementiert.
Opera 5.12 interpretiert dieses Beispiel auch.
HTML-Referenz: siehe Element: input
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <inputt>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften sowie die folgenden eigenen Eigenschaften und Methoden.
|
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> <script type="text/javascript"> <!-- var Breite = 3; function erweitern() { Breite += 1; document.getElementsByName("Eingabe")[0].size = Breite; } //--> </script></head><body> <form name="Formular"> Geben Sie Text ein:<br> <input size="3" name="Eingabe" onKeyPress="erweitern()"> </form> </body></html> |
In der Beispieldatei ist ein Formular mit einem zunächst ziemlich kleinen Eingabefeld (size="3"
) notiert. Das Eingabefeld enthält den Event-Handler onKeyPress
. Bei jedem Tastendruck, der erfolgt, während das Eingabefeld den Fokus hat, wird darum die JavaScript- Funktion erweitern()
aufgerufen, die im Dateikopf notiert ist. Diese greift mit document.getElementsByName("Eingabe")[0]
auf das erste Element mit dem Namen Eingabe
zu, also das Eingabefeld, und ändert dessen Eigenschaft size
mit dem aktuellen Wert der Variablen Breite
. Diese wird bei jedem Aufruf der Funktion um 1 erhöht. Das Beispiel bewirkt, dass das Eingabefeld um so größer wird, je mehr Text eingegeben wird.
HTML-Referenz: siehe Element: ins
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <ins>...</ins>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften sowie die folgenden eigenen Eigenschaften.
|
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> </head><body> <p>Text <ins id="hinzugekommen" onMouseOver="document.getElementById('hinzugekommen').title='das ist hinzugekommener Text'">mit weiterem Text</ins></p> </body></html> |
Das Beispiel enthält einen Absatz, von dessen Text ein Teil mit <ins>...</ins>
ausgezeichnet ist. Beim Überfahren dieses Textes mit der Maus (onMouseOver
) wird dynamisch die Universaleigenschaft title
mit einem Wert belegt. Dazu wird mit document.getElementById('hinzugekommen')
auf das ins
-Element zugegriffen.
Mit Netscape 6.1beta war dieses Beispiel nicht nachvollziehbar.
Das Beispiel wird auch von Opera 5.12 interpretiert.
HTML-Referenz: siehe Element: ins
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <ins>...</ins>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften sowie die folgenden eigenen Eigenschaften.
|
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> </head><body> <isindex title="selten angewendetes HTML-Element" id="Eingabe" onMouseOver="alert(document.getElementById('Eingabe').title)"> </body></html> |
Das Beispiel enthält ein isindex
-Element. Beim Überfahren des Elements mit der Maus wird ein Meldungsfenster ausgegeben, das den Wert des title
-Attributs ausgibt, das im Element notiert ist. Dazu wird mit document.getElementById('Eingabe')
auf das Element zugegriffen.
Der Event-Handler onMouseOver
kann zwar auf dieses Element angewendet werden, ist jedoch kein Bestandteil der Standards.
Das vorliegende Beispiel wird auch von Opera 5.12, jedoch nicht vom MS Internet Explorer 5.0 Macintosh Edition interpretiert.
HTML-Referenz: siehe Element: kbd
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <kbd>...</kbd>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften.
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> <script type="text/javascript"> <!-- function Hinweis() { document.getElementById("Keyboard").title = "Sie haben es geschafft!"; alert(document.getElementById("Keyboard").title); } //--> </script></head><body onKeyPress="Hinweis()"> <kbd id="Keyboard">Taste drücken</kbd>: </body></html> |
Das Beispiel enthält eine Aufforderung eine Taste zu drücken, die sinnigerweise <kbd>...</kbd>
eingeschlossen ist. Das einleitende <body>
-Tag der Datei enthält den Event-Handler onKeyPress
. Wenn das Dokument den Fokus hat und der Anwender irgendeine Taste drückt, wird die JavaScript- Funktion Hinweis()
aufgerufen, die im Dateikopf definiert ist. Diese Funktion greift mit document.getElementById("Keyboard")
auf das kbd
-Element zu und weist dessen Universaleigenschaft title
einen Wert zu. Anschließend wird zur Kontrolle genau diese Universaleigenschaft in einem Meldungsfenster ausgegeben.
Das Beispiel wird auch von Opera 5.12 interpretiert.
HTML-Referenz: siehe Element: label
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <label>...</label>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften sowie die folgenden eigenen Eigenschaften.
|
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> </head><body> <form name="Formular" action=""> <table> <tr> <td><label id="VN" for="Vorname">Ihr Vorname:</label></td> <td><input type="text" id="Vorname"></td> </tr><tr> <td><label id="ZN" for="Zuname">Ihr Zuname:</label></td> <td><input type="text" id="Zuname"></td> </tr> </table> </form> <script type="text/javascript"> <!-- document.getElementById("Vorname").value = document.getElementById("VN").htmlFor; document.getElementById("Zuname").value = document.getElementById("ZN").htmlFor; //--> </script> </body></html> |
Das Beispiel enthält ein Formular mit zwei Eingabefeldern. Die Beschriftungen der Eingabefelder sind jeweils mit einem label
-Element ausgezeichnet. Unterhalb des Formulars ist ein Script-Bereich notiert. Dort werden die beiden Eingabefelder mit Werten vorbelegt, und zwar mit den Werten, die den id
-Attributen der zugehörigen label
-Element zugewiesen sind. Dazu wird mit document.getElementById("VN")
und document.getElementById("ZN")
auf die label
-Elemente zugegriffen. Ihre Eigenschaft htmlFor
wird den Formularfeldern zugewiesen, auf die ebenfalls mit getElementById()
zugegriffen wird.
HTML-Referenz: siehe Element: legend
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <legend>...</legend>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften sowie die folgenden eigenen Eigenschaften.
|
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> </head><body> <form name="Formular" action=""> <fieldset> <legend id="L1">Absender</legend> <input type="text" size="50" name="Absendername" onFocus="document.getElementById('L1').align='right'" onBlur="document.getElementById('L1').align='left'"> </fieldset> <fieldset> <legend id="L2">Mitteilung</legend> <input type="text" size="50" name="Mitteilungstext" onFocus="document.getElementById('L2').align='right'" onBlur="document.getElementById('L2').align='left'"> </fieldset> </form> </body></html> |
Das Beispiel enthält ein Formular, bei dem für jedes der beiden Eingabefelder ein fieldset
-Bereich mitsamt legend
-Element definiert ist. Sobald eines der Eingabefelder den Fokus erhält (onFocus
), wird der zugehörige Legendentext rechtsbündig ausgerichtet. Sobald das Eingabefeld den Fokus wieder verliert (onBlur
), wird der Legendentext wieder linksbündig ausgerichtet. Dazu wird mit document.getElementById('L1')
bzw. document.getElementById('L2')
auf die legend
-Elemente zugegriffen. Neu gesetzt wird jeweils ihre Eigenschaft align
.
Im Netscape 6 erfolgt die Ausrichtung ausgehend vom rechten Rand des Eingabefeldes. Im MS Internet Explorer 5.0 war dieses Beispiel nicht nachvollziehbar.
HTML-Referenz: siehe Element: li
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <li>...</li>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften sowie die folgenden eigenen Eigenschaften.
|
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> <style type="text/css"> <!-- .hinterlegt { background-color:yellow } --> </style> <script type="text/javascript"> <!-- function Aendern() { for(var i = 0; i < document.getElementsByTagName("li").length; i++) if(i % 2 != 0) { document.getElementsByTagName("li")[i].className = "hinterlegt"; document.getElementsByTagName("li")[i].type = "I"; } } //--> </script> </head><body> <ol> <li>Ein ungerader Listenpunkt</li> <li>Ein gerader Listenpunkt</li> <li>Ein ungerader Listenpunkt</li> <li>Ein gerader Listenpunkt</li> <li>Ein ungerader Listenpunkt</li> <li>Ein gerader Listenpunkt</li> <li>Ein ungerader Listenpunkt</li> <li>Ein gerader Listenpunkt</li> </ol> <a href="javascript:Aendern()">gerade Listenpunkte hinterlegen!</a> </body></html> |
Das Beispiel enthält eine nummerierte Liste mit einigen Listenpunkten. Unterhalb davon ist ein Verweis notiert. Bei Anklicken des Verweises wird die JavaScript- Funktion Aendern()
aufgerufen, die im Dateikopf notiert ist. Diese Funktion geht in einer for-Schleife der Reihe nach alle li
-Elemente durch, wobei sie mit document.getElementsByTagName("li")
darauf zugreift. Bei geraden Listenpunkten werden zwei Änderungen durchgeführt: erstens erhalten diese Listenpunkte eine oben im Style-Bereich definierte CSS-Klasse zugewiesen, die dem Element eine andere Hintergrundfarbe zuweist, und zweitens wird der Nummerierungstyp dieser Listenpunkte auf "römisch großgeschrieben" gesetzt.
HTML-Referenz: siehe Element: link
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <link>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften sowie die folgenden eigenen Eigenschaften.
|
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> <link id="CSS" rel="stylesheet" href="styles_1.css"> <script type="text/javascript"> <!-- function CSS_Wechsel() { document.getElementById("CSS").href = "styles_2.css"; } //--> </script> </head><body> <h1>Dies und das</h1> <a href="javascript:CSS_Wechsel()">anderes Style-Sheet!</a> </body></html> |
Das Beispiel enthält im Dateikopf ein HTML-Tag zum Einbinden eines CSS-Stylesheets. Innerhalb des sichtbaren Dokumentbereichs ist ein Verweis notiert, bei dessen Anklicken die JavaScript- Funktion CSS_Wechsel()
aufgerufen wird, die im Dateikopf notiert ist. Diese Funktion greift mit document.getElementById("CSS")
auf das link
-Element zu, das die CSS-Datei einbindet, und weist der Eigenschaft href
einen neuen Wert zu, nämlich die neue CSS-Datei. Dadurch wird die neue CSS-Datei relevant für alle Formatierungen innerhalb der HTML-Datei.
Mit Netscape 6.1 und dem MS Internet Explorer 5.0 Macintosh Edition war dieses Beispiel nicht nachvollziehbar.
HTML-Referenz: siehe Element: map
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <map>...</map>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften sowie die folgenden eigenen Eigenschaften.
|
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> <script type="text/javascript"> <!-- function zeigCoords() { alert(document.getElementsByName("Testbild")[0].areas[0].coords); } //--> </script> </head><body> <map name="Testbild"> <area id="Verweis" shape="rect" coords="1,1,249,49" href="javascript:zeigCoords()" alt="Verweis"> </map> <img src="hypgraf.gif" width="400" height="400" usemap="#Testbild" alt="verweis-sensitive Grafik"> </body></html> |
Das Beispiel enthält eine Grafik, die auf einen ebenfalls enthaltenen verweis-sensitiven Bereich verweist. Dort wird ein verweis-sensitives Rechteck für die Grafik definiert. Beim Anklicken dieses Bereichs wird die JavaScript- Funktion zeigCoords()
aufgerufen, die im Dateikopf notiert ist. Die Funktion gibt die Koordinaten des verweis-sensitiven Bereichs aus, indem sie mit document.getElementsByName("Testbild")[0].areas[0].coords
auf den areas
-Array des map
-Elements zugreift und die Eigenschaft coords
von dessem ersten Element anspricht.
HTML-Referenz: siehe Element: menu
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <menu>...</menu>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften sowie die folgende eigene Eigenschaft.
|
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> <script type="text/javascript"> <!-- function zeigKompakt() { document.getElementsByTagName("menu")[0].compact = true; } //--> </script> </head><body> <menu onMouseOver="zeigKompakt()"> <li>Datei</li> <li>Bearbeiten</li> <li>Ansicht</li> <li>Format</li> </menu> </body></html> |
Das Beispiel enthält eine Menüliste. Beim Überfahren der Liste mit der Maus (onMouseOver
) wird die JavaScript- Funktion zeigKompakt()
aufgerufen, die im Dateikopf notiert ist. Die Funktion greift mit document.getElementsByTagName("menu")[0]
auf das erste menu
-Element in der Datei zu und setzt seine Eigenschaft compact
auf den Wert true
("wahr"). Dadurch wird die gesamte Liste in kompakter Schrift dargestellt.
Weder Netscape noch Internet Explorer interpretieren das HTML-Attribut compact
.
HTML-Referenz: siehe Element: meta
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <meta>...</meta>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften sowie die folgenden eigenen Eigenschaften.
|
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> <meta http-equiv="content-type" content="text/html; charset=iso-8859-1"> <script type="text/javascript"> <!-- function Arabisch() { document.getElementsByTagName("meta")[0].content="text/html; charset=iso-8859-6"; } //--> </script> </head><body> <p style="font-size:24pt">ÈÉÊËÌÍÎÏÐÑ</p> <p><a href="javascript:Arabisch()">Arabisch</a></p> </body></html> |
Das Beispiel enthält einen Textabsatz, der mit numerischen Entities Zeichenwerte von 200 bis 209 erzeugt. Unterhalb davon ist ein Verweis notiert. Beim Anklicken wird die JavaScript- Funktion Arabisch()
aufgerufen, die im Dateikopf notiert ist. Diese Funktion greift mit document.getElementsByTagName("meta")[0]
auf das meta
-Tag zu, das ebenfalls im Dateikopf notiert ist, und ändert dessen Eigenschaft content
so, dass der arabische Zeichensatz (iso-8859-6) angegeben wird.
Weder Netscape noch Internet Explorer interpretieren diese Veränderung.
HTML-Referenz: siehe Element: noframes
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <noframes>...</noframes>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften.
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> </head> <frameset cols="50%,50%"> <frame id="F1" src="frame1.htm"> <frame id="F2" src="frame2.htm"> <noframes title="Das ist aber ein doofer Browser!"> Ihr Browser kann keine Frames anzeigen! <a href="javascript:alert(document.getElementsByTagName('noframes')[0].title)">weitere Infos</a> </noframes> </frameset> </html> |
Das Beispiel enthält eine Frameset-Definition und einen alternativen noframes
-Bereich. Innerhalb davon ist ein Verweis notiert, bei dessen Anklicken der Wert der Universaleigenschaft title
des einleitenden <noframes>
-Tags in einem Meldungsfenster ausgegeben wird.
Leider ist dieses Beispiel mit den gängigen Browsern nicht nachvollziehbar, da diese Frames unterstützen und auch kein Abschalten von Frames ermöglichen. Eine Ausnahme bildet hier Opera, der ein Abschalten von Frames zulässt und das Beispiel auch interpretiert.
HTML-Referenz: siehe Element: noscript
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <noscript>...</noscript>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften.
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> <meta http-equiv="content-type" content="text/html; charset=iso-8859-1"> </head><body> <script language="tcl" type="text/tcl"> <!-- proc square {i} { document write "The call passed $i to the function.<BR>" return [expr $i * $i] } document write "The function returned [square 5]." # --> </script> <noscript id="tcl" title="Ich verstehe kein tcl."> <p onmouseover="alert(document.getElementById('tcl').title)">Ein Browser der kein tcl kann.</p> </noscript> </body></html> |
Im Beispiel wurde ein Scriptbereich in der Sprache tcl dargestellt. Browser, die diese Sprache nicht interpretieren, interpretieren den zugehörigen noscript
-Bereich und zeigen den alternativen Text an. Da es sich um eine andere Sprache als JavaScript handelt, können Sie auf das Scriptelement mit JavaScript zugreifen. Wenn die Maus über den Absatz bewegt wird, wird der Titel des noscript
-Elementes angezeigt.
Der MS Internet Explorer und Netscape interpretieren diesen Tag nur bei ausgeschalteten JavaScript. In Opera 5.12 können Sie das Beispiel jedoch nachvollziehen.
HTML-Referenz: siehe Element: object
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <object>...</object>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften sowie die folgenden eigenen Eigenschaften.
|
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> <script language="JavaScript" type="text/javascript"> <!-- function groesser() { document.getElementById("TXT").width="640"; document.getElementById("TXT").height="480"; } //--> </script> </head><body> <p><object id="TXT" data="html.txt" type="text/plain" width="320" height="240"></object></p> <p><a href="javascript:groesser()">mehr sehen!</a></p> </body></html> |
Das Beispiel enthält die Objektdefinition einer TXT-Datei. Unterhalb davon ist ein Verweis notiert. Beim Anklicken des Verweises wird die JavaScript- Funktion groesser()
aufgerufen, die im Dateikopf notiert ist. Die Funktion greift mit document.getElementById("TXT")
auf das object
-Element zu und ändert dessen Eigenschaften für width
und height
. Das Objekt wird dadurch dynamisch vergrößert.
Im Netscape 6.1 war dieses Beispiel nicht nachvollziehbar.
HTML-Referenz: siehe Element: ol
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <ol>...</ol>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften sowie die folgenden eigenen Eigenschaften.
|
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> <script type="text/javascript"> <!-- function roemisch() { document.getElementById("Liste").type="I"; } function normal() { document.getElementById("Liste").type="1"; } //--> </script> </head><body> <ol id="Liste"> <li>eins</li> <li>zwei</li> <li>drei</li> <li>vier</li> <li>fünf</li> </ol> <a href="javascript:roemisch()">römisch</a><br> <a href="javascript:normal()">normal</a> </body></html> |
Das Beispiel enthält eine nummerierte Liste. Unterhalb davon sind zwei Verweise notiert. Der eine ruft eine JavaScript- Funktion roemisch()
auf, der andere eine Funktion normal()
. Beide Funktionen greifen jeweils mit document.getElementById("Liste")
auf das Start-Tag der nummerierten Liste zu und ändern dessen Eigenschaft type
. Im einen Fall wird die Nummerierung dynamisch durch römische Ziffern ersetzt, im andern Fall werden wieder arabische Ziffern benutzt.
HTML-Referenz: siehe Element: optgroup
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <optgroup>...</optgroup>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften sowie die folgenden eigenen Eigenschaften.
|
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> </head><body> <form name="Auswahl" action=""> <select name="Namen" size="1" onChange="alert(document.getElementById('A').label)"> <optgroup label="Namen mit A" id="A"> <option label="Anna"> Anna</option> <option label="Anke"> Anke</option> </optgroup> </select> </form> </body></html> |
Das Beispiel definiert eine Menüstrutkur. Sobald ein Eintrag ausgewählt ist (onChange
), wird in einem Meldungsfenster der Wert der Eigenschaft label
des optgroup
-Elements mit dem id
-Wert A
ausgegeben.
Weder Netscape noch Internet Explorer interpretieren Menüstrukturen bis auf den heutigen Tag korrekt - Netscape 6.x zwar ansatzweise, aber noch nicht so wie es gedacht ist. Dennoch interpretieren beide Browser das obige JavaScript.
HTML-Referenz: siehe Element: option
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <option>...</option>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften sowie die folgenden eigenen Eigenschaften.
|
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> </head><body> <form name="Auswahl" action=""> <select name="Zutaten" size="1"> <option value="Z_101">Salami</option> <option value="Z_102">Pilze</option> <option value="Z_103">Schinken</option> <option value="Z_104">Oliven</option> <option value="Z_105">Paprika</option> </select> </form> <script language="JavaScript" type="text/javascript"> <!-- document.write("<table border=\"1\">"); for(i = 0; i < document.getElementsByTagName("option").length; i++) { document.write("<tr><td><b>Zutat:<\/b><\/td><td>"); document.write(document.getElementsByTagName("option")[i].text); document.write("<\/td><td><b>interner Absendewert:<\/b><\/td><td>"); document.write(document.getElementsByTagName("option")[i].value); document.write("<\/td><\/tr>"); } document.write("<\/table>"); //--> </script> </body></html> |
Das Beispiel enthält ein Formular mit einer Auswahlliste. Unterhalb davon ist ein Script notiert, das dynamisch eine Tabelle ins Dokument schreibt. Dazu geht es in einer for-Schleife der Reihe nach alle option
-Elemente durch und greift mit document.getElementsByTagName("option")
auf die einzelnen option
-Elemente zu. Für jedes Element werden der interne Absendewert (value
) und der Auswahltext (text
) in die Tabelle geschrieben.
Das vorliegende Beispiel wird auch von Opera 5.12 interpretiert.
HTML-Referenz: siehe Element: p
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <p>...</p>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften sowie die folgende eigene Eigenschaft.
|
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> <script type="text/javascript"> <!-- function Ausrichten(wie) { for(var i = 0; i < document.getElementsByTagName("p").length; i++) { document.getElementsByTagName("p")[i].align = wie; } } //--> </script> </head><body> <p>Der erste</p> <p>Der zweite</p> <p>Der dritte</p> <form name="Formular" action=""> <input type="button" value="links" onClick="Ausrichten('left')"> <input type="button" value="zentriert" onClick="Ausrichten('center')"> <input type="button" value="rechts" onClick="Ausrichten('right')"> </form> </body></html> |
Das Beispiel enthält drei Textabsätze. Unterhalb davon ist ein Formular mit drei Klickbuttons notiert. Jeder Button ruft beim Anklicken die JavaScript- Funktion Ausrichten()
auf, die im Dateikopf notiert ist, und übergibt ihr einen Wunschwert für die Ausrichtung (left
, center
und right
). Die Funktion Ausrichten()
geht in einer for-Schleife mit document.getElementsByTagName("p")
der Reihe nach alle p
-Elemente des Dokuments durch und weist ihren Eigenschaften align
den übergebenen Parameter für die Ausrichtung zu. Dadurch bewirkt der Klick auf einen der Buttons die dynamische Ausrichtung aller Textabsätze.
HTML-Referenz: siehe Element: param
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <param>...</param>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften sowie die folgenden eigenen Eigenschaften.
|
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> </head><body> <applet id="Ticker" code="zticker.class" width="600" height="60"> <param name="msg" value="Die Energie des Verstehens"> <param name="speed" value="5"> <param name="bgco" value="255,255,255"> <param name="txtco" value="000,000,255"> <param name="hrefco" value="255,255,255"> </applet> <script type="text/javascript"> <!-- document.write("<table>"); for(var i = 0; i < document.getElementsByTagName("param").length; i++) { document.write("<tr><td><b>Parameter:<\/b><\/td><td>"); document.write(document.getElementsByTagName("param")[i].name); document.write("<\/td><td><b>Wert:<\/b><\/td><td>"); document.write(document.getElementsByTagName("param")[i].value); document.write("<\/td><\/tr>"); } document.write("<\/table>"); //--> </script> </body></html> |
Das Beispiel enthält ein Java-Applet mit verschiedenen Parametern. Unterhalb davon ist ein Script notiert, das dynamisch eine Tabelle ins Dokument schreibt. Dazu geht es in einer for-Schleife der Reihe nach alle param
-Elemente durch und greift mit document.getElementsByTagName("param")
auf die einzelnen param
-Elemente zu. Für jedes Element werden der Parametername (name
) und der zugehörige Wert (value
) in die Tabelle geschrieben.
Im MS Internet Explorer bis Version 5.5 lässt sich dieses Beispiel merkwürdigerweise nur nachvollziehen, wenn sich die param
-Elemente nicht innerhalb eines gültigen Elternelementes befinden. Das vorliegende Beispiel wird dagegen auch von Opera 5.12 und dem MS Internet Explorer 5.0 Macintosh Edition interpretiert.
HTML-Referenz: siehe Element: pre
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <pre>...</pre>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften sowie die folgenden eigenen Eigenschaften.
|
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> <script type="text/javascript"> <!-- function Breite() { document.getElementById("x").width = "15"; } //--> </script> </head><body> <pre id="x"> xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx </pre> <a href="javascript:Breite()">Breite auf 15 setzen</a> </body></html> |
Das Beispiel enthält einen pre
-Bereich mit 30 x
-Zeichen pro Zeile. Unterhalb davon ist ein Verweis notiert. Beim Anklicken des Verweises wird die JavaScript- Funktion Breite()
aufgerufen, die im Dateikopf notiert ist. Diese Funktion greift mit document.getElementById("x")
auf das pre
-Element zu und weist ihm für die Eigenschaft width
den Wert 15
zu.
Weder Netscape noch Internet Explorer interpretieren das Attribut width
im Zusammenhang mit pre
-Elementen.
HTML-Referenz: siehe Element: q
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <q>...</q>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften sowie die folgende eigene Eigenschaft.
|
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> </head><body> <p>Wie sagte Goethe doch? <q id="Faustzitat" cite="aus Faust" onMouseOver="alert(document.getElementById('Faustzitat').cite)">Habe, ach, Philsosophie studiert ...</q></p> </body></html> |
Das Beispiel enthält ein Zitat, in dessen einleitendem Tag ein Event-Handler onMouseOver
notiert ist. Beim Überfahren mit der Maus wird ein Meldungsfenster ausgegeben, das den Wert des Attributs cite=
ausgibt. Dazu wird mit document.getElementById('Faustzitat').cite
auf die entsprechende Elementeigenschaft zugegriffen.
Netscape 6. Opera 5.12 und der MS Internet Explorer 5.0 Macintosh Edition schließen das Zitat in "..."
ein. Opera 5.12 interpretiert zwar den Event-Handler, gibt aber als Eigenschaft des Attributes cite=
den Wert undefined
zurück.
HTML-Referenz: siehe Element: s
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <s>...</s>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften.
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> <style type="text/css"> <!-- .rot { color:red } --> </style> <script type="text/javascript"> <!-- function deutlicher() { document.getElementById("schweinisch").className = "rot"; } //--> </script> </head><body> <h1><s id="schweinisch">Es tut so gut ein Schwein zu sein</s></h1> <a href="javascript:deutlicher()">deutlicher!</a> </body></html> |
Das Beispiel enthält eine Überschrift mit durchgestrichenem Text. Unterhalb davon steht ein Verweis, bei dessen Anklicken die JavaScript- Funktion deutlicher()
aufgerufen wird. Mit document.getElementById("schweinisch")
greift diese Funktion auf das s
-Element zu und weist ihm für die Universaleigenschaft className
den Klassennamen rot
zu, für den im Dateikopf in einem Style-Bereich CSS-Definitionen exisiteren. Der durchgestrichene Text wird dadurch rot.
HTML-Referenz: siehe Element: samp
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <samp>...</samp>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften.
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> </head><body> <p>Ich sage zum Beispiel immer <samp id="zumbeispiel" onMouseOver="alert(document.getElementById('zumbeispiel').id)">zum Beispiel</samp></p> </body></html> |
Das Beispiel enthält einen mit <samp>...</samp>
ausgezeichneten Text. Im Einleitungs-Tag ist der Event-Handler onMouseOver
notiert. Beim Überfahren des Textes mit der Maus wird in einem Meldungsfenster der Id-Wert des Elements ausgegeben. Dazu wird mit document.getElementById('zumbeispiel').id
auf die entsprechende Eigenschaft zugegriffen.
Das vorliegende Beispiel wird auch von Opera 5.12 interpretiert.
HTML-Referenz: siehe Element: script
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <script>...</script>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften sowie die folgenden eigenen Eigenschaften.
|
function hallo() { alert("Hallo Welt"); } |
function hallo() { alert("hello world"); } |
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> <script src="hallo_deutsch.js" type="text/javascript"> </script> <script type="text/javascript"> <!-- function englisch() { if (document.getElementsByTagName("script")[0].src!="hallo_englisch.js") document.getElementsByTagName("script")[0].src="hallo_englisch.js"; hallo(); } function deutsch() { if (document.getElementsByTagName("script")[0].src!="hallo_deutsch.js") document.getElementsByTagName("script")[0].src="hallo_deutsch.js"; hallo(); } //--> </script> </head><body> <a href="javascript:englisch()">englisches Hallo-Welt</a><br> <a href="javascript:deutsch()">deutsches Hallo-Welt</a> </body></html> |
Für dieses Beispiel wurden zwei externe JavaScript-Dateien definiert. Beide Dateien enthalten die gleich Funktion Hallo()
. Sie unterscheiden sich jedoch darin, dass in der Datei hallo_deutsch.js
, die Ausgabe in Deutsch erfolgt und in der Datei hallo_englisch.js
in Englisch.
Im Beispiel gibt es zwei Script-Bereiche. Im ersten Bereich wird unter Verwendung der src
-Eigenschaft das externes JavaScript hallo_deutsch.js
geladen. Im zweiten Bereich sind die Funktionen englisch()
und deutsch()
notiert. Der Verweis englisches Hallo-Welt ruft die Funktion englisch()
auf. Innerhalb der Funktion wird geprüft, ob dem ersten script
-Element die Datei hallo_englisch.js
als src
-Eigenschaft zugewiesen ist. Ist dies nicht der Fall, so erhält dieses Element die Datei hallo_englisch.js
zugewiesen und die Datei wird geladen. Die Funktion hallo()
gibt jetzt die englische Meldung aus. Wird umgekehrt auf den Verweis deutsches Hallo-Welt geklickt, so wird geprüft, ob die Datei hallo_deutsch.js
zugewiesen wurde und die Eigenschaft gegebenenfalls geändert. Die Ausgabe erfolgt dann in deutscher Sprache.
In Opera 5.12 und Netscape 6.1 ist dieses Beispiel nicht nachzuvollziehen, da beide Browser die neu zugewiesende Datei nicht interpretieren.
Die Verwendung von Universaleigenschaften ist im HTML-4.0-Standard für das script
-Element nicht vorgesehen. Deshalb sollten Sie bei diesem Element die Methode document.getElementsById()
vermeiden.
Der MS Internet Explorer 5.0 Macintosh Edition regiert mit einer Fehlermeldung bei der Verwendung dieses Beispieles, da er auf dieses Element offenbar nicht mit document.getelementsByTagName()
zugreifen kann.
Opera 5.12 interpretiert das Attribut type
nicht. Möchten Sie zum Beispiel einen Scriptbereich in VB-Script einfügen, so ist hier das missbilligte language
-Attribut zur Sprachangabe zwingend erforderlich, da der Browser sonst Fehlermeldungen erzeugt, da er als Defaultsprache JavaScript verwendet.
HTML-Referenz: siehe Element: select
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <select>...</select>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften sowie die folgenden eigenen Eigenschaften und Methoden.
|
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> <script type="text/javascript"> <!-- var Wert = 1; function hinzu() { var position=null; if (document.all) position=position=document.getElementsByName("Auswahl")[0].length; var Eintrag = document.createElement("option"); Eintrag.text = document.getElementsByName("Eingabe")[0].value; Eintrag.value = Wert; Wert += 1; document.getElementsByName("Auswahl")[0].add(Eintrag,position); } //--> </script> </head><body> <form name="Formular" action=""> <select name="Auswahl" size="10"> <option value="0">Liste</option> </select><br> Eintrag: <input name="Eingabe" size="30"> <input type="button" value="hinzufügen" onClick="hinzu()"> </form> </body></html> |
Das Beispiel enthält ein Formular mit einer Auswahlliste, einem Eingabefeld und einem Klickbutton. Klickt der Anwender auf den Button, wird der im Eingabefeld eingegebene Wert dynamisch der Auswahlliste als Eintrag hinzugefügt. Dazu wird die JavaScript- Funktion hinzu()
aufgerufen, die im Dateikopf notiert ist. Bevor der Eintrag mit der Objektmethode add()
hinzugefügt werden kann, muss zunächst mit document.createElement() ein neues option
-Element erzeugt werden. Das Element wird in der Variablen Eintrag
gespeichert. Seinen sichtbaren Text bekommt es mit Eintrag.text
zugewiesen. Dabei wird mit document.getElementsByName("Eingabe")[0].value
auf den Wert des Eingabefeldes zugegriffen. Auch einen Absendewert value
erhält der Eintrag. Dazu wird die Variable Wert
zugewiesen, die anschließend um 1 erhöht wird, so dass jeder neue Eintrag eine höhere Nummer als Absendewert erhält. Schließlich wird mit document.getElementsByName("Auswahl")[0]
auf die Auswahlliste zugegriffen und der neue Eintrag am Ende der Liste hinzugefügt.
Die Methode add()
erwartet als ersten Parameter den Eintrag für das neue Listenelement und als zweiten Parameter, die Position vor der das Element eingefügt werden soll.
Innerhalb dieses Beispieles ist es erforderlich, zwischen den Browsern zu unterscheiden. Netscape 6.1 interpretiert die Methode add()
nur dann, wenn ihr als Position null
übergeben wird. Der Parameter null
bedeutet übrigens: Eintrag am Ende einfügen.
Im MS Internet Explorer dagegen führt dieser Aufruf der Methode zu einem Typenkonflikt. Diesen können Sie vermeiden, indem Sie, wie im Beispiel, als Parameter die Länge der zu ergänzenden Liste übergeben oder alternativ den Parameter position
weglassen.
Netscape 6.1 interpretiert die Angabe zur Position noch nicht wie vorgesehen. Um für beide Browser zu programmieren, müssen Sie also eine "Browserweiche" einfügen, z.B. mit Hilfe des navigator-Objekts.
HTML-Referenz: siehe Element: small
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <small>...</small>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften.
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> <style type="text/css"> <!-- .mini { font-family:Small Fonts; font-size:5pt } --> </style> <script type="text/javascript"> <!-- function ganzklein() { document.getElementsByTagName("small")[0].className = "mini"; } //--> </script> </head><body> <small onClick="ganzklein()">winzigweich!</small> </body></html> |
Das Beispiel enthält einen Text, der mit <small>...</small>
ausgezeichnet ist. Beim Anklicken des Textes (onClick
) wird die JavaScript- Funktion ganzklein()
aufgerufen, die im Dateikopf notiert ist. Diese Funktion greift mit document.getElementsByTagName("small")[0]
auf das erste small
-Element im Dokument zu und weist ihm die className
-Eigenschaft mit dem Wert mini
zu. Dahinter verbirgt sich die CSS-Klasse, die im Dateikopf im Style-Bereich definiert ist.
HTML-Referenz: siehe Element: span
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <span>...</span>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften.
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> <style type="text/css"> <!-- #diesesFormat { font-family:Arial; font-size:18pt } #anderesFormat { font-family:Algerian; font-size:36pt } --> </style> <script type="text/javascript"> <!-- function aendern() { document.getElementById("diesesFormat").id = "anderesFormat"; } //--> </script> </head><body> <span id="diesesFormat" onClick="aendern()">Das individuelle Format</span> </body></html> |
Das Beispiel enthält einen Text, der mit <span>...</span>
ausgezeichnet ist. Das span
-Element enthält außerdem eine CSS-Bindung, da es die id
mit dem Wert diesesFormat
hat, für das im Dateikopf ein individuelles Format definiert ist. Beim Anklicken des span
-Textes (onClick
) wird die JavaScript- Funktion aendern()
aufgerufen, die im Dateikopf notiert ist. Diese Funktion greift mit document.getElementById("diesesFormat")
auf das span
-Element zu und weist ihm für die id
-Eigenschaft den neuen Wert anderesFormat
zu. Auch für diesen Id-Wert ist im Style-Bereich eine CSS-Definition notiert. Das Beispiel bewirkt also ein einmaliges dynamisches Austauschen der CSS-Eigenschaften beim span
-Element.
HTML-Referenz: siehe Element: strike
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <strike>...</strike>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften.
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> </head><body> <strike id="strike" onMouseOver="alert(document.getElementById('strike').title)" title="NICHT, weil es 'deprecated' ist">Benutzen Sie dieses Element!</strike> </body></html> |
Das Beispiel enthält einen Text, der mit <strike>...</strike>
ausgezeichnet ist. Im einleitenden Tag ist der Event-Handler onMouseOver
notiert. Beim Überfahren des durchgestrichenen Textes mit der Maus wird eine Meldung ausgegeben, und zwar der Text, der beim Element im title
-Attribut notiert ist. Dazu wird mit document.getElementById('strike').title
auf das Element zugegriffen. Der id
-Name strike
lautet nur zufällig genauso wie der Elementname, um zu demonstrieren, dass dies durchaus erlaubt ist.
Das vorliegende Beispiel wird auch von Opera 5.12 interpretiert.
HTML-Referenz: siehe Element: strong
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <strong>...</strong>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften.
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> <style type="text/css"> <!-- .normal { font-size:20pt; color:blue; } .extra { font-size:20pt; color:red; background-color:yellow; } --> </style> <script type="text/javascript"> <!-- function wechseln() { if(document.getElementById("stark").className == "normal") document.getElementById("stark").className = "extra"; else document.getElementById("stark").className = "normal"; } //--> </script> </head><body> <p><strong id="stark" class="normal" onMouseOver="wechseln()" onMouseOut="wechseln()">ganz stark!</strong></p> </body></html> |
Das Beispiel enthält Text, der mit <strong>...</strong>
ausgezeichnet ist. Das einleitende Tag enthält eine CSS-Klassenangabe, eine eindeutige Id-Angabe und die Event-Handler onMouseOver
und onMouseOut
, die jeweils die JavaScript- Funktion wechseln()
aufgerufen, die im Dateikopf notiert ist. Diese Funktion fragt ab, ob der zugewiesene Klassenname normal
lautet. Wenn ja, wird er auf extra
geändert, wenn nein, wird er auf normal
geändert. Dadurch ergibt sich der Effekt, dass sich beim Überfahren des Textes mit der Maus die CSS-Eigenschaften dynamisch ändern.
HTML-Referenz: siehe Element: style
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <style>...</style>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften sowie die folgenden eigenen Eigenschaften.
|
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> <style type="text/css"> <!-- h1 { font-size:36pt; color:red; } --> </style> <script type="text/javascript"> <!-- function ohneCSS() { document.getElementsByTagName("style")[0].disabled = true; } //--> </script> </head><body> <h1>Mit CSS!</h1> <a href="javascript:ohneCSS()"><b>ohne CSS!</b></a> </body></html> |
Das Beispiel enthält eine Überschrift und einen Verweis. Beim Anklicken des Verweises wird die die JavaScript- Funktion ohneCSS()
aufgerufen, die im Dateikopf notiert ist. Die Funktion greift mit document.getElementsByTagName("style")[0]
auf das erste style
-Element zu und setzt dessen Eigenschaft disabled
auf den booleschen Wert true
("wahr"). Dadurch werden alle in dem Style-Bereich definierten Formate für das Dokument ungültig. Die Überschrift verliert dynamisch ihre CSS-Eigenschaften.
HTML-Referenz: siehe Element: sub
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <sub>...</sub>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften.
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> </head><body> <a href="javascript:alert(document.getElementsByTagName('sub')[0].title)">Tief</a> und <sub title="ganz tief">tiefer</sub> </body></html> |
Das Beispiel enthält ein Wort, das mit <sub>...</sub>
ausgezeichnet ist, und einen Verweis. Beim Anklicken des Verweises wird in einem Meldungsfenster der Wert des title
-Attributs aus dem sub
-Element ausgegeben. Dazu wird mit document.getElementsByTagName('sub')[0]
auf das erste sub
-Element der Datei zugegriffen.
Das vorliegende Beispiel wird auch von Opera 5.12 interpretiert.
HTML-Referenz: siehe Element: sup
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <sup>...</sup>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften.
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> <script type="text/javascript"> <!-- function Vertauschen() { var swap = document.getElementById("Basis").firstChild.nodeValue; document.getElementById("Basis").firstChild.nodeValue = document.getElementById("Exponent").firstChild.nodeValue; document.getElementById("Exponent").firstChild.nodeValue = swap; } //--> </script> </head><body><span style="font-size:200%"> <a id="Basis" href="javascript:Vertauschen()">x</a><sup id="Exponent">y</sup> </span></body></html> |
Das Beispiel stellt einen Text "x hoch y" dar. Das "x" ist dabei in einen Verweis eingeschlossen, bei dessen Anklicken die JavaScript- Funktion Vertauschen()
aufgerufen, die im Dateikopf notiert ist. Diese Funktion greift sowohl auf das Verweis-Element (document.getElementById("Basis")
) als auch auf das sup
-Element (document.getElementById("Exponent")
) zu und vertauscht deren Inhalte. Der Zugriff auf die Inhalte erfolgt mit node.nodeValue (firstChild
ist ein bestimmter Knotentyp).
HTML-Referenz: siehe Element: table
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <table>...</table>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften sowie die folgenden eigenen Eigenschaften und Methoden.
|
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> <script type="text/javascript"> <!-- var Zeile = 0; function ZeileEinfuegen() { if (Zeile==0) document.getElementById("Tabelle").deleteRow(0); var TR = document.getElementById("Tabelle").insertRow(Zeile); Zeile += 1; var TD1 = document.createElement("td"); var TD1text = document.createTextNode(document.Formular.linkerText.value); TD1.appendChild(TD1text); var TD2 = document.createElement("td"); var TD2text = document.createTextNode(document.Formular.rechterText.value); TD2.appendChild(TD2text); TR.appendChild(TD1); TR.appendChild(TD2); document.Formular.linkerText.value = ""; document.Formular.rechterText.value = ""; } function Rahmen() { if(document.getElementsByName("Option")[0].checked == true) document.getElementById("Tabelle").border = "2"; else document.getElementById("Tabelle").border = "0"; } function Farbe() { if(document.getElementsByName("Option")[1].checked == true) document.getElementById("Tabelle").bgColor = "#CCCCFF"; else document.getElementById("Tabelle").bgColor = ""; } //--> </script> </head><body> <form name="Formular" action=""> <input type="text" name="linkerText"> <input type="text" name="rechterText"> <input type="button" value=" OK " onClick="ZeileEinfuegen()"><br> <input type="checkbox" name="Option" onClick="Rahmen()"> Rahmen <input type="checkbox" name="Option" onClick="Farbe()"> Hintergrund </form> <table id="Tabelle"> <tr><td>Eine Tabelle</td></tr> </table> </body></html> |
Das Beispiel enthält ein Formular und unterhalb davon eine einzeilige Tabelle. Das Formular besteht aus zwei Eingabefeldern, einem Klickbutton und zwei Checkboxen. Die beiden Eingabefelder dienen dazu, um die Tabelle mit neuem Inhalt zu füllen. Gibt der Anwender in beiden Feldern etwas ein und klickt dann auf den Klickbutton, wird die JavaScript- Funktion ZeileEinfuegen()
aufgerufen, die im Dateikopf notiert ist. Beim ersten Aufruf der Funktion - die Variable Zeile
ist hier noch 0 - wird mit document.getElementById("Tabelle").deleteRow(0)
die vorhandene Tabellenzeile gelöscht.
Mit document.getElementById("Tabelle").insertRow(Zeile)
greift die Funktion auf die Tabelle zu und fügt ihr mit insertRow()
eine neue Zeile ein. Der übergebene Wert Zeile
bestimmt, an welcher Stelle der Tabelle die neue Zeile eingefügt werden soll. Da die Variable Zeile
anschließend um 1 erhöht wird, wird beim nächsten Aufruf der Funktion die Zeile unterhalb der letzten Zeile hinzugefügt.
Der Rückgabewert von insertRow()
ist das neu erzeugte tr
-Element für die Tabellenzeile. Das Element wird in der Variablen TR
gespeichert.
Um die Tabellenzeile mit Inhalt zu füllen, werden zwei Tabellenzellen erzeugt. Die Elemente werden mit document.createElement() erzeugt. Für die Inhalte der Tabellenzellen werden mit document.createTextNode() zwei Textknoten erzeugt, die als Wert die Inhalte der beiden Eingabefelder des Formulars zugewiesen bekommen.
Mit der Methode node.appendChild() werden die Textknoten als Kindknoten zu den Tabellenzellen hinzugefügt, und anschließend werden mit der gleichen Methode die Tabellenzelle als Kindknoten zu der Tabellenzeile hinzugefügt.
Die beiden Checkboxen rufen beim Anklicken (onClick
) die Funktionen Rahmen()
bzw. Farbe()
auf. Dort wird jeweils überprüft, ob die Checkboxen angekreuzt sind (checked
) oder nicht. Dann wird mit document.getElementById("Tabelle")
auf die Tabelle zugegriffen und abhängig davon, ob die Checkbox angekreuzt ist oder nicht, deren Eigenschaften für border
bzw. bgColor
dynamisch geändert.
HTML-Referenz: siehe Element: tbody
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <tbody>...</tbody>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften sowie die folgenden eigenen Eigenschaften.
|
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> <script type="text/javascript"> <!-- function rechts() { document.getElementById("Tabellendaten").align = "right"; } //--> </script> </head><body> <table border="1"> <tr><th width="200">Name</th><th width="200">Alter</th></tr> <tbody id="Tabellendaten"> <tr><td>Hans</td><td>18</td></tr> <tr><td>Flora</td><td>17</td></tr> </tbody> </table> <a href="javascript:rechts()">rechts ausrichten</a> </body></html> |
Das Beispiel enthält eine Tabelle mit ausgewiesenem tbody
-Bereich. Unterhalb der Tabelle ist ein Verweis notiert, bei dessen Anklicken die die JavaScript- Funktion rechts()
aufgerufen wird, die im Dateikopf notiert ist. Diese Funktion greift mit document.getElementById("Tabellendaten")
auf das tbody
-Element zu und ändert dessen Eigenschaft align
auf den Wert right
. Dadurch werden alle Tabellenzellen imd tbody
-Bereich rechtsbündig ausgerichtet.
Mit Netscape 6.1 und dem MS Internet Explorer 5.0 Macintosh Editionwar dieses Beispiel nicht nachvollziehbar.
HTML-Referenz: siehe Element: td
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <td>...</td>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften sowie die folgenden eigenen Eigenschaften.
|
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> </head><body> <table cellspacing="2" border="2"> <tr><td>Hans</td><td>18</td></tr> <tr><td>Flora</td><td>17</td></tr> </table> <script type="text/javascript"> <!-- var Farben = new Array("#CCFFCC","#CCCCFF","FFCCCC","FFCCFF","FFFFCC"); for(var i = 0; i < document.getElementsByTagName("td").length; i++) { var index = parseInt((Math.random() * 100) % (Farben.length - 1)); document.getElementsByTagName("td")[i].bgColor = Farben[index]; } //--> </script> </body></html> |
Das Beispiel enthält eine Tabelle. Unterhalb davon ist ein JavaScript-Bereich notiert. Dort wird in einer for-Schleife der Reihe nach mit document.getElementsByTagName("td")
auf alle td
-Elemente der Datei zugegriffen. Durch Aufruf von Math.random() werden Zufallszahlen ermittelt, die mit Hilfe von Multiplikation mit 100, Modulodivision und Anwendung der Funktion parseInt() so getrimmt werden, dass es ganzzahlige Zufallszahlen werden, die sich als Index für den zuvor definierten Array Farben
eignen. Mit document.getElementsByTagName("td")[i].bgColor
wird schließlich die Hintergrundfarbe der jeweils aktuellen Tabellenzelle auf einen zufällig ermittelten Farbwert gesetzt. Die Tabelle wird auf diese Weise schön bunt, und jede Zelle erhält eine per Zufall ausgesuchte Hintergrundfarbe.
HTML-Referenz: siehe Element: textarea
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <textarea>...</textarea>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften sowie die folgenden eigenen Eigenschaften und Methoden.
|
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> <script type="text/javascript"> <!-- function setText() { document.getElementById("Text").firstChild.nodeValue = document.getElementById("Eingabe").value; } //--> </script> </head><body> <form name="Formular" action=""> Text:<br> <textarea id="Eingabe" rows="10" cols="50" onKeyPress="setText()"></textarea> </form> <div id="Text" style="font-size:16pt; background-color:#FFFFCC; padding:10px; border:solid 1px red"> </div> </body></html> |
Das Beispiel enthält ein Formular mit einem textarea
-Eingabebereich. Unterhalb des Formulars ist ein schick formatierter div
-Bereich notiert, der als Inhalt aber zunächst nur ein erzwungenes Leerzeichen
enthält. Im einleitenden <textarea>
-Tag ist der Event-Handler onKeyPress
notiert. Wenn der Anwender in dem Feld etwas eingibt, wird bei jedem Loslassen eines Tastendrucks die JavaScript- Funktion setText()
aufgerufen wird, die im Dateikopf notiert ist. Diese Funktion greift mit document.getElementById("Text").firstChild.nodeValue
auf den Inhalt des div
-Elements zu und weist diesem den Wert des Eingabefeldes (document.getElementById("Eingabe").value
) zu. Somit wird in den div
-Bereich dynamisch der Text geschrieben, den der Anwender im Textfeld eingibt.
HTML-Referenz: siehe Element: tfoot
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <tfoot>...</tfoot>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften sowie die folgenden eigenen Eigenschaften.
|
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> </head><body> <table border="1"> <tfoot id="Fuss" valign="top"> <tr><td colspan="2" height="40"> Angaben ohne Gewähr! </td></tr></tfoot> <tr><td>Hans</td><td>18</td></tr> <tr><td>Flora</td><td>17</td></tr> </table> <script type="text/javascript"> <!-- var Ausrichtung = document.getElementById("Fuss").vAlign; document.write("Angaben ohne Gewähr haben die Ausrichtung: " + Ausrichtung); //--> </script> </body></html> |
Ds Beispiel enthält eine Tabelle mit einem ausgewiesenen tfoot
-Bereich. Unterhalb der Tabelle ist ein JavaScript-Bereich notiert. Darin wird mit document.getElementById("Fuss").vAlign
auf das tfoot
-Element zugegriffen und der Wert von dessen Eigenschaft vAlign
ausgelesen. Anschließend wird das Ergebnis ins Dokument geschrieben.
Das vorliegende Beispiel wird auch von Opera 5.12 interpretiert.
HTML-Referenz: siehe Element: th
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <th>...</th>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften sowie die folgenden eigenen Eigenschaften.
|
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> </head><body> <table border="1"> <tr><th width="200">Name</th><th width="200">Alter</th></tr> <tr><td>Hans</td><td>18</td></tr> <tr><td>Flora</td><td>17</td></tr> </table> <script type="text/javascript"> <!-- for(var i = 0; i < document.getElementsByTagName("th").length; i++) document.getElementsByTagName("th")[i].align = "left"; //--> </script> </body></html> |
Das Beispiel enthält eine Tabelle und unterhalb davon einen JavaScript-Bereich. Dort werden in einer for-Schleife der Reihe nach alle th
-Elemente des Dokuments ermittelt. Ihnen wird für die Eigenschaft align
der Wert left
zugewiesen.
Der MS Internet Explorer 5.0 Macintosh Edition interpretiert dieses Beispiel nicht.
HTML-Referenz: siehe Element: thead
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <thead>...</thead>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften sowie die folgenden eigenen Eigenschaften.
|
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> </head><body> <table border="1"> <thead id="Kopf"> <tr><th width="200">Name</th><th width="200">Alter</th></tr> </thead> <tr><td>Hans</td><td>18</td></tr> <tr><td>Flora</td><td>17</td></tr> </table> <script type="text/javascript"> <!-- var Zeilen = document.getElementById("Kopf").rows.length; document.write("Tabellenkopf hat " + Zeilen + " Zeilen"); //--> </script> </body></html> |
Das Beispiel enthält eine Tabelle und unterhalb davon einen JavaScript-Bereich. Dort wird mit document.getElementById("Kopf").rows.length
die Anzahl der Tabellenzeilen im Bereich des thead
-Elements ermittelt und anschließend ins Dokument geschrieben.
HTML-Referenz: siehe Element: title
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <title>...</title>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften sowie die folgende eigenen Eigenschaft.
|
Anzeigebeispiel: So sieht's aus
<html><head><title>Ein ganz besonderer Tag</title> </head><body> <script type="text/javascript"> <!-- document.write("<h1>" + document.getElementsByTagName('title')[0].text + "<\/h1>"); //--> </script> </body></html> |
Das Beispiel enthält einen JavaScript-Bereich, in dem dynamisch eine Überschrift erster Ordnung ins Dokument geschrieben wird. Überschriftentext wird der Inhalt des title
-Elements geschrieben. Dazu wird mit document.getElementsByTagName('title')[0]
auf das title
-Element zugegriffen.
HTML-Referenz: siehe Element: tr
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <tr>...</tr>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften sowie die folgenden eigenen Eigenschaften und Methoden.
|
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> <script type="text/javascript"> <!-- var Zelle = 0; function neueZelle() { if (Zelle==0) document.getElementById("Zeile").deleteCell(0); var Text = document.createTextNode(document.Formular.Eingabe.value); var TD = document.getElementById("Zeile").insertCell(Zelle); Zelle += 1; TD.appendChild(Text); document.Formular.Eingabe.value = ""; } //--> </script> </head><body> <table border="1"> <tr id="Zeile"><td>Zelle</td></tr> </table> <form name="Formular" action=""> <input type="text" name="Eingabe"> <input type="button" value=" OK " onClick="neueZelle()"> </form> </body></html> |
Das Beispiel enthält eine Tabelle mit einer einspaltigen Tabellenzeile und unterhalb der Tabelle ein Formular mit einem Eingabefeld und einem Klickbutton. Beim Anklicken des Buttons wird die JavaScript- Funktion neueZelle()
aufgerufen wird, die im Dateikopf notiert ist. Beim ersten Aufruf der Funktion - die Variable Zelle
ist hier noch 0 - wird mit document.getElementById("Zeile").deleteCell(0)
die vorhandene Tabellenzelle gelöscht. Die Funktion erzeugt zunächst mit document.createTextNode() einen Textknoten, der als Wert den Inhalt des Formular-Eingabefeldes erhält. Anschließend wird mit document.getElementById("Zeile")
auf die Tabellenzeile zugegriffen und mit der Methode insertCell() eine neue Tabellenzelle eingefügt. Der übergebene Parameter bestimmt, an wie vielter Stelle die Zelle in der Zeile eingefügt wird. Im Beispiel wird dazu die Variable Zelle
benutzt, die bei jedem Funktionsaufruf um 1 erhöht wird. So ist sichergestellt, dass neue Zellen immer ans Ende der Zeile angehängt werden.
Der Rückgabewert von insertCell()
ist das neu erzeugte td
-Element. Es wird in der Variablen TD
gespeichert. Mit der Methode node.appendChild() wird der zuvor erzeugte Textknoten in das td
-Element als Kindknoten hinzugefügt. Die Tabellenzeile ist damit dynamisch um das neue Zellenelement erweitert worden.
HTML-Referenz: siehe Element: tt
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <tt>...</tt>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften.
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> </head><body> <tt title="ein Teletyper!" onMouseover="alert(document.getElementsByTagName('tt')[0].title)">Was bin ich?</tt> </body></html> |
Das Beispiel enthält mit <tt>...</tt>
ausgezeichneten Text, der den Event-Handler onMouseOver
enthält. Beim Überfahren des Textes mit der Maus wird in einem Meldungsfenster der Wert des title
-Attributs des Elements ausgegeben. Dazu wird mit document.getElementsByTagName('tt')[0]
auf das Element zugegriffen.
Das vorliegende Beispiel wird auch von Opera 5.12 interpretiert.
HTML-Referenz: siehe Element: u
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <u>...</u>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften.
Anzeigebeispiel: So sieht's aus
<html><head><title>Ein ganz besonderer Tag</title> <style type="text/css"> <!-- .so { text-decoration:overline; } --> </style> <script type="text/javascript"> <!-- function anders() { document.getElementById("uText").className = "so"; } //--> </script> </head><body> <u id="uText" onClick="anders()">das ist der Text</u> </body></html> |
Das Beispiel enthält unterstrichenen Text. Im einleitenden <u>
-Tag ist der Event-Handler onClick
notiert. Beim Anklicken des Textes dieses Elements wird die JavaScript- Funktion anders()
aufgerufen. Diese greift mit document.getElementById("uText")
auf das u
-Element zu und weist ihm die im Dateikopf in einem Style-Bereich definierte Klasse so
zu. Der Text wird dadurch überstrichen statt unterstrichen dargestellt.
Im MS Internet Explorer 5.0 wird als Ergebnis des Funktionsaufrufes der Text sowohl unterstrichen als auch überstrichen dargestellt. Netscape 6.1 und der MS Internet Explorer 5.5 verhalten sich dagegen wie im Beispiel beschrieben.
HTML-Referenz: siehe Element: ul
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <ul>...</ul>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften sowie die folgenden eigenen Eigenschaften.
|
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> <script type="text/javascript"> <!-- function Bullet(Symbol) { document.getElementById("Liste").type = Symbol; } //--> </script> </head><body> <ul id="Liste"> <li>ein Punkt</li> <li>und noch ein Punkt</li> </ul> <a href="javascript:Bullet('disc')">Disc-Symbol</a> <a href="javascript:Bullet('square')">Square-Symbol</a> </body></html> |
Das Beispiel enthält eine Aufzählungsliste. Unterhalb davon sind zwei Verweise notiert. Bei Anklicken der Verweise wird jeweils die JavaScript- Funktion Bullet()
aufgerufen, die im Dateikopf notiert ist. Diese Funktion greift mit document.getElementById("Liste")
auf das ul
-Element der Liste zu und weist seiner Eigenschaft type
den Wert zu, den die Funktion beim Aufruf von den Verweisen übergeben bekommen hat.
HTML-Referenz: siehe Element: var
Auf HTML-Elementobjekte zugreifen: siehe HTML-Elementobjekte: Allgemeines zur Verwendung
HTML-Elemente <var>...</var>
haben als DOM-Objekte für den Scriptsprachenzugriff Universaleigenschaften.
Anzeigebeispiel: So sieht's aus
<html><head><title>Test</title> </head><body> Datei: <var id="datei" title="/usr/docs/web/projekte/dateiname.html">dateiname.html</var><br> genauer: <script type="text/javascript"> <!-- document.write("<var>" + document.getElementById('datei').title + "<\/var>"); --> </script> </body></html> |
Das Beispiel enthält einen mit <var>...</var>
ausgezeichneten Text. Unterhalb ist ein JavaScript-Bereich notiert. Dort wird mit document.getElementById('datei')
auf das var
-Element zugegriffen und der Wert von dessen Eigenschaft title
dynamisch ins Dokument geschrieben.
Das vorliegende Beispiel wird auch von Opera 5.12 interpretiert.
node | |
document | |
SELFHTML/Navigationshilfen JavaScript/DOM Objekt-Referenz |
© 2001 selfhtml@teamone.de