HTML-Attributreferenz
Elemente in HTML haben Attribute; dies sind zusätzliche Werte, die die Elemente konfigurieren oder ihr Verhalten auf verschiedene Arten anpassen, um die von den Benutzern gewünschten Kriterien zu erfüllen.
Attributliste
| Attributname | Elemente | Beschreibung |
|---|---|---|
accept
|
<form>, <input>
|
Liste der vom Server akzeptierten Typen, typischerweise ein Dateityp. |
accept-charset
|
<form> |
Der Zeichensatz, der, falls angegeben, "UTF-8" sein muss. |
accesskey
|
Globales Attribut | Tastenkombination zum Aktivieren oder Fokussieren des Elements. |
action
|
<form> |
Die URI eines Programms, das die über das Formular übermittelten Informationen verarbeitet. |
align
|
<caption>, <col>,
<colgroup>,
<hr>, <iframe>,
<img>, <table>,
<tbody>, <td>,
<tfoot>, <th>,
<thead>, <tr>
|
Gibt die horizontale Ausrichtung des Elements an. |
allow
|
<iframe> |
Gibt eine Feature-Policy für das iframe an. |
alpha
|
<input> |
Ermöglicht dem Benutzer, die Deckkraft einer Farbe in einer Eingabe mit type="color" auszuwählen. |
alt
|
<area>,
<img>, <input>
|
Alternativtext für den Fall, dass ein Bild nicht angezeigt werden kann. |
aria-*
|
Alle Elemente | Ändert den Zustand oder die Eigenschaften eines Elements im Barrierefreiheitsbaum. Die Anwendbarkeit hängt vom jeweiligen ARIA-Attribut ab. |
as
|
<link>
|
Gibt den Typ des vom Link geladenen Inhalts an. |
async
|
<script> |
Führt das Skript asynchron aus. |
autocapitalize
|
Globales Attribut | Legt fest, ob Eingaben bei der Eingabe durch den Benutzer automatisch großgeschrieben werden. |
autocomplete
|
<form>, <input>,
<select>,
<textarea>
|
Gibt an, ob Steuerelemente in diesem Formular standardmäßig ihre Werte automatisch durch den Browser vervollständigen lassen können. |
autoplay
|
<audio>,
<video>
|
Das Audio oder Video soll so bald wie möglich abgespielt werden. |
background |
<body>, <table>,
<td>, <th>
|
Gibt die URL einer Bilddatei an.
Hinweis: Obwohl Browser und E-Mail-Clients dieses Attribut möglicherweise weiterhin
unterstützen, ist es veraltet. Verwenden Sie stattdessen CSS
|
bgcolor |
<body>, <col>,
<colgroup>,
<marquee>,
<table>,
<tbody>,
<tfoot>, <td>,
<th>, <tr>
|
Hintergrundfarbe des Elements.
Hinweis: Dies ist ein Legacy-Attribut. Verwenden Sie stattdessen die
CSS-Eigenschaft |
border |
<img>, <object>,
<table>
|
Die Rahmenbreite.
Hinweis: Dies ist ein Legacy-Attribut. Verwenden Sie stattdessen die
CSS-Eigenschaft |
capture
|
<input> |
Gibt gemäß der Media-Capture-Spezifikation an, dass eine neue Datei erfasst werden kann. |
charset
|
<meta>
|
Deklariert die Zeichenkodierung der Seite oder des Skripts. |
checked
|
<input>
|
Gibt an, ob das Element beim Laden der Seite aktiviert sein soll. |
cite
|
<blockquote>,
<del>, <ins>,
<q>
|
Enthält eine URI, die auf die Quelle des Zitats oder der Änderung verweist. |
class
|
Globales Attribut | Wird häufig mit CSS verwendet, um Elemente mit gemeinsamen Eigenschaften zu gestalten. |
color |
<font>, <hr>
|
Dieses Attribut legt die Textfarbe entweder mit einem benannten Farbwert oder einer Farbe im hexadezimalen Format #RRGGBB fest.
Hinweis: Dies ist ein Legacy-Attribut. Verwenden Sie stattdessen die
CSS-Eigenschaft |
colorspace
|
<input> |
Definiert den Farbraum, der von einer Eingabe mit type="color" verwendet wird. |
cols
|
<textarea> |
Definiert die Anzahl der Spalten in einem textarea. |
colspan
|
<td>, <th>
|
Das Attribut colspan definiert die Anzahl der Spalten, die eine Zelle umfassen soll. |
content
|
<meta> |
Ein Wert, der abhängig vom Kontext mit http-equiv oder
name verknüpft ist.
|
contenteditable
|
Globales Attribut | Gibt an, ob der Inhalt des Elements bearbeitbar ist. |
controls
|
<audio>,
<video>
|
Gibt an, ob der Browser dem Benutzer Wiedergabesteuerelemente anzeigen soll. |
coords
|
<area> |
Eine Menge von Werten, die die Koordinaten der Hotspot-Region angibt. |
crossorigin
|
<audio>, <img>,
<link>, <script>,
<video>
|
Wie das Element Cross-Origin-Anfragen verarbeitet. |
csp
|
<iframe> |
Gibt die Content Security Policy an, deren Durchsetzung ein eingebettetes Dokument für sich selbst zustimmen muss. |
data
|
<object> |
Gibt die URL der Ressource an. |
data-*
|
Globales Attribut | Ermöglicht Ihnen, einem HTML-Element benutzerdefinierte Attribute hinzuzufügen. |
datetime
|
<del>, <ins>,
<time>
|
Gibt das mit dem Element verknüpfte Datum und die Uhrzeit an. |
decoding
|
<img> |
Gibt die bevorzugte Methode zum Dekodieren des Bildes an. |
default
|
<track> |
Gibt an, dass der Track aktiviert werden soll, sofern die Benutzereinstellungen nichts anderes angeben. |
defer
|
<script> |
Gibt an, dass das Skript ausgeführt werden soll, nachdem die Seite geparst wurde. |
dir
|
Globales Attribut | Definiert die Textrichtung. Zulässige Werte sind ltr (von links nach rechts) oder rtl (von rechts nach links). |
dirname
|
<input>,
<textarea>
|
|
disabled
|
<button>,
<fieldset>,
<input>,
<optgroup>,
<option>,
<select>,
<textarea>
|
Gibt an, ob der Benutzer mit dem Element interagieren kann. |
download
|
<a>, <area> |
Gibt an, dass der Hyperlink zum Herunterladen einer Ressource verwendet werden soll. |
draggable
|
Globales Attribut | Definiert, ob das Element gezogen werden kann. |
enctype
|
<form> |
Definiert den Inhaltstyp der Formulardaten, wenn die
method POST ist.
|
enterkeyhint
|
<textarea>,
contenteditable
|
enterkeyhint
gibt an, welche Aktionsbeschriftung (oder welches Symbol) für die Eingabetaste auf
virtuellen Tastaturen angezeigt werden soll. Das Attribut kann mit Formularsteuerelementen
(etwa dem Wert von textarea-Elementen) oder in Elementen eines
Bearbeitungshosts verwendet werden (z. B. mit dem Attribut contenteditable).
|
elementtiming
|
<img>,
<image>-Elemente innerhalb eines <svg>,
Posterbilder von <video>-Elementen,
Elemente mit einem background-image,
und Elemente, die Textknoten enthalten, etwa ein <p>
|
Gibt an, dass ein Element zur Nachverfolgung durch [`PerformanceObserver`](/de/docs/Web/API/PerformanceObserver)-Objekte unter Verwendung des Typs "element" markiert ist. Weitere Details finden Sie in der Schnittstelle [`PerformanceElementTiming`](/de/docs/Web/API/PerformanceElementTiming).
|
fetchpriority
|
<img>,
<link>,
<script>
|
Signalisiert, dass das frühe Abrufen eines bestimmten Bildes während des Ladeprozesses mehr oder weniger Auswirkungen auf die Benutzererfahrung hat, als ein Browser bei der Zuweisung einer internen Priorität vernünftigerweise ableiten kann. |
for
|
<label>,
<output>
|
Beschreibt Elemente, die zu diesem Element gehören. |
form
|
<button>,
<fieldset>,
<input>,
<object>,
<output>,
<select>,
<textarea>
|
Gibt das Formular an, dessen Eigentümer das Element ist. |
formaction
|
<input>,
<button>
|
Gibt die Aktion des Elements an und überschreibt die im
<form> definierte Aktion.
|
formenctype
|
<button>,
<input>
|
Wenn die Schaltfläche/Eingabe eine Submit-Schaltfläche ist (z. B. type="submit"),
legt dieses Attribut den bei der Formularübermittlung zu verwendenden Kodierungstyp fest. Wenn
dieses Attribut angegeben ist, überschreibt es das Attribut
enctype des form-Eigentümers
der Schaltfläche.
|
formmethod
|
<button>,
<input>
|
Wenn die Schaltfläche/Eingabe eine Submit-Schaltfläche ist (z. B. type="submit"),
legt dieses Attribut die bei der Formularübermittlung zu verwendende Übermittlungsmethode
fest (GET, POST usw.). Wenn dieses Attribut angegeben ist,
überschreibt es das Attribut method des form-Eigentümers
der Schaltfläche.
|
formnovalidate
|
<button>,
<input>
|
Wenn die Schaltfläche/Eingabe eine Submit-Schaltfläche ist (z. B. type="submit"),
gibt dieses boolesche Attribut an, dass das Formular bei seiner Übermittlung nicht
validiert werden soll. Wenn dieses Attribut angegeben ist, überschreibt es das Attribut
novalidate des form-Eigentümers
der Schaltfläche.
|
formtarget
|
<button>,
<input>
|
Wenn die Schaltfläche/Eingabe eine Submit-Schaltfläche ist (z. B. type="submit"),
gibt dieses Attribut den Browsing-Kontext an (beispielsweise Tab, Fenster
oder Inline-Frame), in dem die nach Übermittlung des Formulars erhaltene Antwort
angezeigt werden soll. Wenn dieses Attribut angegeben ist, überschreibt es das Attribut
target des form-Eigentümers
der Schaltfläche.
|
headers
|
<td>, <th>
|
IDs der <th>-Elemente, die auf dieses Element zutreffen.
|
height |
<canvas>,
<embed>,
<iframe>, <img>,
<input>,
<object>,
<video>
|
Gibt die Höhe der hier aufgeführten Elemente an. Verwenden Sie für alle anderen Elemente
die CSS-Eigenschaft |
hidden
|
Globales Attribut | Verhindert das Rendern des angegebenen Elements, während untergeordnete Elemente, z. B. Skriptelemente, aktiv bleiben. |
high
|
<meter> |
Gibt die untere Grenze des oberen Bereichs an. |
href
|
<a>, <area>,
<base>, <link>
|
Die URL einer verknüpften Ressource. |
hreflang
|
<a>, <link>
|
Gibt die Sprache der verknüpften Ressource an. |
http-equiv
|
<meta> |
Definiert eine Pragma-Direktive. |
id
|
Globales Attribut | Wird häufig mit CSS verwendet, um ein bestimmtes Element zu gestalten. Der Wert dieses Attributs muss eindeutig sein. |
integrity
|
<link>, <script>
|
Dieses Attribut enthält einen oder mehrere Hashes der Ressource und wird verwendet, um sicherzustellen, dass der Inhalt der Ressource dem entspricht, was der Entwickler erwartet, und nicht bei einem Lieferkettenangriff durch eine bösartige Kopie ersetzt wurde. Siehe Subresource Integrity. |
inputmode
|
<textarea>,
contenteditable
|
Gibt einen Hinweis auf den Datentyp, den ein Benutzer möglicherweise eingibt,
während er das Element oder seinen Inhalt bearbeitet. Das Attribut kann
mit Formularsteuerelementen (etwa dem Wert von
textarea-Elementen) oder in Elementen eines Bearbeitungshosts
verwendet werden (z. B. mit dem Attribut contenteditable).
|
ismap
|
<img> |
Gibt an, dass das Bild Teil einer serverseitigen Imagemap ist. |
itemprop
|
Globales Attribut | |
kind
|
<track> |
Gibt die Art der Textspur an. |
label
|
<optgroup>,
<option>,
<track>
|
Gibt einen für Benutzer lesbaren Titel des Elements an. |
lang
|
Globales Attribut | Definiert die im Element verwendete Sprache. |
language
|
<script> |
Definiert die im Element verwendete Skriptsprache. |
loading |
<img>, <iframe>
|
Gibt an, ob das Element verzögert geladen werden soll
(loading="lazy") oder sofort geladen wird
(loading="eager").
|
list
|
<input> |
Identifiziert eine Liste vordefinierter Optionen, die dem Benutzer vorgeschlagen werden sollen. |
loop
|
<audio>,
<marquee>,
<video>
|
Gibt an, ob die Medien nach Ende der Wiedergabe wieder von Anfang an abgespielt werden sollen. |
low
|
<meter> |
Gibt die obere Grenze des unteren Bereichs an. |
max
|
<input>,
<meter>,
<progress>
|
Gibt den maximal zulässigen Wert an. |
maxlength
|
<input>,
<textarea>
|
Definiert die maximale Anzahl von Zeichen, die im Element zulässig sind. |
minlength
|
<input>,
<textarea>
|
Definiert die minimale Anzahl von Zeichen, die im Element zulässig sind. |
media
|
<a>, <area>,
<link>, <source>,
<style>
|
Gibt einen Hinweis auf das Medium an, für das die verknüpfte Ressource entworfen wurde. |
method
|
<form> |
Definiert, welche HTTP-Methode beim
Übermitteln des Formulars verwendet werden soll. Kann GET (Standard) oder
POST sein.
|
min
|
<input>,
<meter>
|
Gibt den minimal zulässigen Wert an. |
multiple
|
<input>,
<select>
|
Gibt an, ob mehrere Werte in einer Eingabe des Typs
email oder file eingegeben werden können.
|
muted
|
<audio>,
<video>
|
Gibt an, ob das Audio beim Laden der Seite zunächst stummgeschaltet ist. |
name
|
<button>, <form>,
<fieldset>,
<iframe>,
<input>,
<object>,
<output>,
<select>,
<textarea>,
<map>, <meta>,
<param>
|
Name des Elements. Wird beispielsweise vom Server verwendet, um die Felder in Formularübermittlungen zu identifizieren. |
novalidate
|
<form> |
Dieses Attribut gibt an, dass das Formular beim Übermitteln nicht validiert werden soll. |
open
|
<details>,
<dialog>
|
Gibt an, ob der Inhalt derzeit sichtbar ist (im Fall eines
<details>-Elements) oder ob der Dialog aktiv ist
und mit ihm interagiert werden kann (im Fall eines
<dialog>-Elements).
|
optimum
|
<meter> |
Gibt den optimalen numerischen Wert an. |
pattern
|
<input> |
Definiert einen regulären Ausdruck, anhand dessen der Wert des Elements validiert wird. |
ping
|
<a>, <area> |
Das Attribut ping gibt eine durch Leerzeichen getrennte Liste von URLs an,
die benachrichtigt werden sollen, wenn ein Benutzer dem Hyperlink folgt.
|
placeholder
|
<input>,
<textarea>
|
Gibt dem Benutzer einen Hinweis darauf, was in das Feld eingegeben werden kann. |
playsinline
|
<video>
|
Ein boolesches Attribut, das angibt, dass das Video „inline“, also innerhalb des Wiedergabebereichs des Elements, abgespielt werden soll. Beachten Sie, dass das Fehlen dieses Attributs nicht bedeutet, dass das Video immer im Vollbildmodus wiedergegeben wird. |
poster
|
<video> |
Eine URL, die ein Posterbild angibt, das angezeigt wird, bis der Benutzer die Wiedergabe startet oder eine andere Position sucht. |
preload
|
<audio>,
<video>
|
Gibt an, ob die gesamte Ressource, Teile davon oder nichts vorab geladen werden soll. |
readonly
|
<input>,
<textarea>
|
Gibt an, ob das Element bearbeitet werden kann. |
referrerpolicy
|
<a>, <area>,
<iframe>, <img>,
<link>, <script>
|
Gibt an, welcher Referrer beim Abrufen der Ressource gesendet wird. |
rel
|
<a>, <area>,
<link>
|
Gibt die Beziehung des Zielobjekts zum Linkobjekt an. |
required
|
<input>,
<select>,
<textarea>
|
Gibt an, ob dieses Element ausgefüllt werden muss oder nicht. |
reversed
|
<ol> |
Gibt an, ob die Liste in absteigender statt in aufsteigender Reihenfolge angezeigt werden soll. |
role
|
Globales Attribut | Definiert eine explizite Rolle für ein Element zur Verwendung durch assistive Technologien. |
rows
|
<textarea> |
Definiert die Anzahl der Zeilen in einem Textbereich. |
rowspan
|
<td>, <th>
|
Definiert die Anzahl der Zeilen, die eine Tabellenzelle umfassen soll. |
sandbox
|
<iframe> |
Hindert ein in einem iframe geladenes Dokument daran, bestimmte Funktionen zu verwenden (wie etwa Formulare zu übermitteln oder neue Fenster zu öffnen). |
scope
|
<th> |
Definiert die Zellen, auf die sich der Kopfzeilentext (definiert im
th-Element) bezieht.
|
selected
|
<option> |
Definiert einen Wert, der beim Laden der Seite ausgewählt wird. |
shape
|
<a>, <area> |
|
size
|
<input>,
<select>
|
Definiert die Breite des Elements (in Pixeln). Wenn das Attribut
type des Elements text oder
password ist, entspricht dies der Anzahl der Zeichen.
|
sizes
|
<link>, <img>,
<source>
|
|
slot
|
Globales Attribut | Weist einem Element einen Slot in einem Shadow-DOM-Schattenbaum zu. |
span
|
<col>,
<colgroup>
|
|
spellcheck
|
Globales Attribut | Gibt an, ob die Rechtschreibprüfung für das Element zulässig ist. |
src
|
<audio>,
<embed>,
<iframe>, <img>,
<input>,
<script>,
<source>,
<track>,
<video>
|
Die URL des einbettbaren Inhalts. |
srcdoc
|
<iframe> |
|
srclang
|
<track> |
|
srcset
|
<img>, <source>
|
Ein oder mehrere responsive Bildkandidaten. |
start
|
<ol> |
Definiert die erste Zahl, falls sie nicht 1 ist. |
step
|
<input> |
|
style
|
Globales Attribut | Definiert CSS-Stile, die zuvor festgelegte Stile überschreiben. |
summary
|
<table> |
|
tabindex
|
Globales Attribut | Überschreibt die Standard-Tabulatorreihenfolge des Browsers und folgt stattdessen der angegebenen. |
target
|
<a>, <area>,
<base>, <form>
|
Gibt an, wo das verknüpfte Dokument geöffnet werden soll (im Fall eines
<a>-Elements) oder wo die erhaltene Antwort angezeigt werden soll
(im Fall eines <form>-Elements).
|
title
|
Globales Attribut | Text, der beim Darüberfahren mit dem Mauszeiger über das Element in einem Tooltip angezeigt wird. |
translate
|
Globales Attribut |
Gibt an, ob die Attributwerte eines Elements und die Werte seiner untergeordneten
Text-Knoten beim Lokalisieren der Seite übersetzt
oder unverändert gelassen werden sollen.
|
type
|
<button>,
<input>,
<embed>,
<object>,
<ol>,
<script>,
<source>,
<style>, <menu>,
<link>
|
Definiert den Typ des Elements. |
usemap
|
<img>, <input>,
<object>
|
|
value
|
<button>, <data>,
<input>, <li>,
<meter>,
<option>,
<progress>,
<param>
|
Definiert einen Standardwert, der beim Laden der Seite im Element angezeigt wird. |
width
|
<canvas>,
<embed>,
<iframe>, <img>,
<input>,
<object>,
<video>
|
Für die hier aufgeführten Elemente legt dies die Breite des Elements fest. |
wrap
|
<textarea> |
Gibt an, ob der Text umgebrochen werden soll. |
Inhaltsattribute im Vergleich zu IDL-Attributen
In HTML haben die meisten Attribute zwei Seiten: das Inhaltsattribut und das IDL-Attribut (Interface Definition Language).
Das Inhaltsattribut ist das Attribut, wie Sie es im Inhalt (dem HTML-Code) festlegen, und Sie können es über element.setAttribute() festlegen oder über element.getAttribute() abrufen. Das Inhaltsattribut ist immer ein String, selbst wenn der erwartete Wert eine ganze Zahl sein sollte. Um beispielsweise das maxlength eines <input>-Elements mithilfe des Inhaltsattributs auf 42 festzulegen, müssen Sie für dieses Element setAttribute("maxlength", "42") aufrufen.
Das IDL-Attribut wird auch als JavaScript-Eigenschaft bezeichnet. Dies sind die Attribute, die Sie mithilfe von JavaScript-Eigenschaften wie element.foo lesen oder festlegen können. Das IDL-Attribut verwendet immer das zugrunde liegende Inhaltsattribut (kann es aber transformieren), um beim Abrufen einen Wert zurückzugeben, und speichert beim Festlegen etwas im Inhaltsattribut. Anders ausgedrückt: IDL-Attribute spiegeln im Wesentlichen die Inhaltsattribute wider.
Meistens geben IDL-Attribute ihre Werte so zurück, wie sie tatsächlich verwendet werden. Beispielsweise ist der Standardwert für type bei <input>-Elementen „text“. Wenn Sie also input.type="foobar" festlegen, hat das <input>-Element den Typ text (in Aussehen und Verhalten), aber der Wert des Inhaltsattributs „type“ lautet „foobar“. Das IDL-Attribut type gibt jedoch den String „text“ zurück.
IDL-Attribute sind nicht immer Strings; beispielsweise ist input.maxlength eine Zahl (ein vorzeichenbehaftetes long). Bei der Verwendung von IDL-Attributen lesen oder setzen Sie Werte des gewünschten Typs. Daher gibt input.maxlength immer eine Zahl zurück, und wenn Sie input.maxlength festlegen, erwartet es eine Zahl. Wenn Sie einen anderen Typ übergeben, wird dieser gemäß den Standardregeln von JavaScript für die Typkonvertierung automatisch in eine Zahl konvertiert.
IDL-Attribute können andere Typen widerspiegeln, etwa unsigned long, URLs, boolesche Werte usw. Leider gibt es keine klaren Regeln, und das Verhalten von IDL-Attributen in Verbindung mit ihren entsprechenden Inhaltsattributen hängt vom jeweiligen Attribut ab. Meistens folgen sie den in der Spezifikation festgelegten Regeln, manchmal jedoch nicht. HTML-Spezifikationen versuchen, dies so entwicklerfreundlich wie möglich zu gestalten, aber aus verschiedenen Gründen (meist historischen) verhalten sich einige Attribute ungewöhnlich (zum Beispiel select.size), und Sie sollten die Spezifikationen lesen, um genau zu verstehen, wie sie sich verhalten.
Boolesche Attribute
Einige Inhaltsattribute (z. B. required, readonly, disabled) werden als boolesche Attribute bezeichnet. Wenn ein boolesches Attribut vorhanden ist, lautet sein Wert true, und wenn es fehlt, lautet sein Wert false.
HTML definiert Einschränkungen für die zulässigen Werte boolescher Attribute: Wenn das Attribut vorhanden ist, muss sein Wert entweder der leere String sein (gleichwertig damit, dass dem Attribut kein Wert zugewiesen ist) oder ein Wert, der ohne Berücksichtigung der Groß- und Kleinschreibung in ASCII mit dem kanonischen Namen des Attributs übereinstimmt und keinen vorangestellten oder nachgestellten Whitespace enthält. Die folgenden Beispiele sind gültige Möglichkeiten, ein boolesches Attribut auszuzeichnen:
<div itemscope>This is valid HTML but invalid XML.</div>
<div itemscope=itemscope>This is also valid HTML but invalid XML.</div>
<div itemscope="">This is valid HTML and also valid XML.</div>
<div itemscope="itemscope">
This is also valid HTML and XML, but perhaps a bit verbose.
</div>
Zur Klarstellung: Die Werte "true" und "false" sind für boolesche Attribute nicht zulässig. Um einen falschen Wert darzustellen, muss das Attribut vollständig weggelassen werden. Diese Einschränkung räumt einige häufige Missverständnisse aus: Bei checked="false" würde beispielsweise das Attribut checked des Elements als true interpretiert, weil das Attribut vorhanden ist.
Attribute für Event-Handler
Warnung: Von der Verwendung von Inhaltsattributen für Event-Handler wird abgeraten. Die Vermischung von HTML und JavaScript führt häufig zu nicht wartbarem Code, und die Ausführung von Event-Handler-Attributen kann außerdem durch Content-Security-Policies blockiert werden.
Warnung:
Obwohl dies beim Aufruf der Methode Function.prototype.toString() für den Handler nicht sichtbar ist, kapseln Event-Handler-Attribute Code implizit in zwei with-Anweisungen und können zu unerwarteten Ergebnissen führen. Beispiel:
<div onclick="console.log(new URL(location))">Bad Example</div>
Wird im Wesentlichen zu:
function onclick(event) {
with (this.ownerDocument) {
with (this) {
console.log(new URL(location)); // 'URL' now resolves to document.URL instead of window.URL
// TypeError: URL is not a constructor
}
}
}
Zusätzlich zu den in der obigen Tabelle aufgeführten Attributen können globale Event-Handler — wie beispielsweise onclick — auch als Inhaltsattribute für alle Elemente angegeben werden.
Alle Event-Handler-Attribute akzeptieren einen String. Der String wird verwendet, um eine JavaScript-Funktion wie function name(/*args*/) {body} zu erzeugen, wobei name der Name des Attributs und body der Wert des Attributs ist. Der Handler erhält dieselben Parameter wie sein JavaScript-Event-Handler-Gegenstück — die meisten Handler erhalten nur einen Parameter event, während onerror fünf erhält: event, source, lineno, colno, error. Dies bedeutet, dass Sie die Variable event im Allgemeinen innerhalb des Attributs verwenden können.
<div onclick="console.log(event)">Click me!</div>
<!-- The synthesized handler has a name; you can reference itself -->
<div onclick="console.log(onclick)">Click me!</div>