Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten.Erfahre mehr über dieses Experiment.
ElementInternals
Baseline Widely available *
This feature is well established and works across many devices and browser versions. It’s been available across browsers since März 2023.
* Some parts of this feature may have varying levels of support.
DasElementInternals Interface desDocument Object Model bietet Webentwicklern eine Möglichkeit, benutzerdefinierte Elemente vollständig an HTML-Formulare teilnehmen zu lassen. Es stellt Werkzeuge zur Verfügung, um mit diesen Elementen auf die gleiche Weise zu arbeiten wie mit jedem standardmäßigen HTML-Formularelement. Außerdem wird dasAccessibility Object Model für das Element zugänglich gemacht.
In diesem Artikel
Konstruktor
Dieses Interface hat keinen Konstruktor. EinElementInternals-Objekt wird zurückgegeben, wennHTMLElement.attachInternals() aufgerufen wird.
Instanz-Eigenschaften
ElementInternals.shadowRootSchreibgeschütztGibt das
ShadowRoot-Objekt zurück, das mit diesem Element assoziiert ist.ElementInternals.formSchreibgeschütztGibt das
HTMLFormElementzurück, das mit diesem Element assoziiert ist.ElementInternals.statesSchreibgeschütztGibt das
CustomStateSetzurück, das mit diesem Element assoziiert ist.ElementInternals.willValidateSchreibgeschütztEin boolescher Wert, der true zurückgibt, wenn das Element ein übermittelbares Element ist, das ein Kandidat für dieEinschränkungsvalidierung ist.
ElementInternals.validitySchreibgeschütztGibt ein
ValidityState-Objekt zurück, das die verschiedenen Gültigkeitszustände des Elements im Hinblick auf die Einschränkungsvalidierung darstellt.ElementInternals.validationMessageSchreibgeschütztEin String, der die Validierungsnachricht dieses Elements enthält.
ElementInternals.labelsSchreibgeschütztGibt eine
NodeListvon allen dem Element zugeordneten Beschriftungselementen zurück.
Instanz-Eigenschaften, die von ARIA enthalten sind
DasElementInternals-Interface enthält auch die folgenden Eigenschaften.
Hinweis:Diese sind enthalten, um sicherzustellen, dass Standard-Zugänglichkeitssemantiken auf einem benutzerdefinierten Element definiert werden können. Diese können durch benutzerdefinierte Attribute überschrieben werden, stellen jedoch sicher, dass die Standardsemantiken beibehalten werden, falls der Autor diese Attribute löscht oder sie gar nicht hinzufügt. Weitere Informationen finden Sie imAccessibility Object Model erläuterer.
ElementInternals.ariaAtomicEin String, der das
aria-atomic-Attribut widerspiegelt, welches angibt, ob unterstützende Technologien den gesamten geänderten Bereich oder nur Teile davon basierend auf den durch dasaria-relevant-Attribut definierten Änderungsmitteilungen präsentieren werden.ElementInternals.ariaAutoCompleteEin String, der das
aria-autocomplete-Attribut widerspiegelt, welches angibt, ob Texteingaben die Anzeige von einer oder mehreren Vorhersagen des beabsichtigten Werts eines Benutzer für ein Kombinationsfeld, Suchfeld oder Textfeld auslösen könnten und wie Vorhersagen präsentiert würden, falls sie gemacht würden.ElementInternals.ariaBrailleLabelEin String, der das
aria-braillelabel-Attribut widerspiegelt, welches die Braille-Beschriftung des Elements definiert.ElementInternals.ariaBrailleRoleDescriptionEin String, der das
aria-brailleroledescription-Attribut widerspiegelt, welches die ARIA-Braille-Rollenbeschreibung des Elements definiert.ElementInternals.ariaBusyEin String, der das
aria-busy-Attribut widerspiegelt, welches angibt, ob ein Element modifiziert wird, da unterstützende Technologien möglicherweise warten möchten, bis die Modifikationen abgeschlossen sind, bevor sie dem Benutzer zugänglich gemacht werden.ElementInternals.ariaCheckedEin String, der das
aria-checked-Attribut widerspiegelt, welches den aktuellen "geprüften" Zustand von Kontrollkästchen, Optionsfeldern und anderen Widgets angibt, die einen geprüften Zustand haben.ElementInternals.ariaColCountEin String, der das
aria-colcount-Attribut widerspiegelt, welches die Anzahl der Spalten in einer Tabelle, einem Raster oder einem Baumraster definiert.ElementInternals.ariaColIndexEin String, der das
aria-colindex-Attribut widerspiegelt, welches den Spaltenindex oder die Position eines Elements im Verhältnis zur Gesamtanzahl der Spalten innerhalb einer Tabelle, eines Rasters oder eines Baumrasters definiert.ElementInternals.ariaColIndexTextEin String, der das
aria-colindextext-Attribut widerspiegelt, welches eine menschenlesbare Textalternative zu aria-colindex definiert.ElementInternals.ariaColSpanEin String, der das
aria-colspan-Attribut widerspiegelt, welches die Anzahl der von einer Zelle oder Rasterzelle innerhalb einer Tabelle, eines Rasters oder eines Baumrasters überspannten Spalten definiert.ElementInternals.ariaCurrentEin String, der das
aria-current-Attribut widerspiegelt, welches das Element angibt, das das aktuelle Element innerhalb eines Containers oder Satzes verwandter Elemente darstellt.ElementInternals.ariaDescriptionEin String, der das
aria-description-Attribut widerspiegelt, welches einen Stringwert definiert, der das aktuelle ElementInternals beschreibt oder annotiert.ElementInternals.ariaDisabledEin String, der das
aria-disabled-Attribut widerspiegelt, welches angibt, dass das Element wahrnehmbar, aber deaktiviert ist, sodass es nicht bearbeitbar oder anderweitig bedienbar ist.ElementInternals.ariaExpandedEin String, der das
aria-expanded-Attribut widerspiegelt, welches angibt, ob ein Gruppierungselement, das diesem Element gehört oder von ihm kontrolliert wird, erweitert oder eingeklappt ist.ElementInternals.ariaHasPopupEin String, der das
aria-haspopup-Attribut widerspiegelt, welches die Verfügbarkeit und den Typ eines interaktiven Popup-Elements angibt, wie Menü oder Dialog, das durch ein ElementInternals ausgelöst werden kann.ElementInternals.ariaHiddenEin String, der das
aria-hidden-Attribut widerspiegelt, welches angibt, ob das Element einer Zugänglichkeits-API ausgesetzt ist.ElementInternals.ariaInvalidEin String, der das
aria-invalid-Attribut widerspiegelt, welches angibt, dass der eingegebene Wert nicht dem von der Anwendung erwarteten Format entspricht.ElementInternals.ariaKeyShortcutsEin String, der das
aria-keyshortcuts-Attribut widerspiegelt, welches angibt, welche Tastenkombinationen ein Autor implementiert hat, um ein Objekt zu aktivieren oder den Fokus darauf zu setzen.ElementInternals.ariaLabelEin String, der das
aria-label-Attribut widerspiegelt, welches einen Stringwert definiert, der das aktuelle Objekt beschriftet.ElementInternals.ariaLevelEin String, der das
aria-level-Attribut widerspiegelt, welches die hierarchische Ebene eines Elements innerhalb einer Struktur definiert.ElementInternals.ariaLiveEin String, der das
aria-live-Attribut widerspiegelt, welches angibt, dass ein Element aktualisiert wird und die Arten der Updates beschreibt, die die Benutzeragenten, unterstützende Technologien und Benutzer von dem Live-Bereich erwarten können.ElementInternals.ariaModalEin String, der das
aria-modal-Attribut widerspiegelt, welches angibt, ob ein Element beim Anzeigen modal ist.ElementInternals.ariaMultilineEin String, der das
aria-multiline-Attribut widerspiegelt, welches angibt, ob ein Textfeld mehrere Zeilen Eingaben akzeptiert oder nur eine einzelne Zeile.ElementInternals.ariaMultiSelectableEin String, der das
aria-multiselectable-Attribut widerspiegelt, welches angibt, dass der Benutzer mehr als ein Element aus den aktuellen auswählbaren Nachfahren auswählen kann.ElementInternals.ariaOrientationEin String, der das
aria-orientation-Attribut widerspiegelt, welches angibt, ob die Ausrichtung des Elements horizontal, vertikal oder unbekannt/mehrdeutig ist.ElementInternals.ariaPlaceholderEin String, der das
aria-placeholder-Attribut widerspiegelt, welches einen kurzen Hinweis definiert, der dem Benutzer bei der Dateneingabe hilft, wenn das Steuerelement keinen Wert hat.ElementInternals.ariaPosInSetEin String, der das
aria-posinset-Attribut widerspiegelt, welches die Nummer oder Position eines Elements im aktuellen Satz von Listenelementen oder Baumelementen definiert.ElementInternals.ariaPressedEin String, der das
aria-pressed-Attribut widerspiegelt, welches den aktuellen "gedrückten" Zustand von Schaltflächen mit Umschaltung angibt.ElementInternals.ariaReadOnlyEin String, der das
aria-readonly-Attribut widerspiegelt, welches angibt, dass das Element nicht bearbeitbar, aber anderweitig bedienbar ist.ElementInternals.ariaRelevantNicht standardisiertEin String, der das
aria-relevant-Attribut widerspiegelt, welches angibt, welche Benachrichtigungen der Benutzeragent auslösen wird, wenn der Zugänglichkeitsbaum innerhalb eines Live-Bereichs geändert wird. Dies wird verwendet, um zu beschreiben, welche Änderungen in einemaria-live-Bereich relevant sind und angekündigt werden sollten.ElementInternals.ariaRequiredEin String, der das
aria-required-Attribut widerspiegelt, welches angibt, dass eine Benutzereingabe auf dem Element erforderlich ist, bevor ein Formular übermittelt werden kann.ElementInternals.roleEin String, der eine ARIA-Rolle enthält. Eine vollständige Liste der ARIA-Rollen finden Sie auf derARIA-Techniken-Seite.
ElementInternals.ariaRoleDescriptionEin String, der das
aria-roledescription-Attribut widerspiegelt, welches eine menschenlesbare, vom Autor lokalisierte Beschreibung für die Rolle eines Elements definiert.ElementInternals.ariaRowCountEin String, der das
aria-rowcount-Attribut widerspiegelt, welches die Gesamtanzahl der Zeilen in einer Tabelle, einem Raster oder einem Baumraster definiert.ElementInternals.ariaRowIndexEin String, der das
aria-rowindex-Attribut widerspiegelt, welches den Zeilenindex oder die Position eines Elements im Verhältnis zur Gesamtanzahl der Zeilen innerhalb einer Tabelle, eines Rasters oder eines Baumrasters definiert.ElementInternals.ariaRowIndexTextEin String, der das
aria-rowindextext-Attribut widerspiegelt, welches eine menschenlesbare Textalternative zu aria-rowindex definiert.ElementInternals.ariaRowSpanEin String, der das
aria-rowspan-Attribut widerspiegelt, welches die Anzahl der von einer Zelle oder Rasterzelle innerhalb einer Tabelle, eines Rasters oder eines Baumrasters überspannten Zeilen definiert.ElementInternals.ariaSelectedEin String, der das
aria-selected-Attribut widerspiegelt, welches den aktuellen "ausgewählten" Zustand von Elementen angibt, die einen ausgewählten Zustand haben.ElementInternals.ariaSetSizeEin String, der das
aria-setsize-Attribut widerspiegelt, welches die Anzahl der Elemente im aktuellen Satz von Listenelementen oder Baumelementen definiert.ElementInternals.ariaSortEin String, der das
aria-sort-Attribut widerspiegelt, welches angibt, ob Elemente in einer Tabelle oder einem Raster in aufsteigender oder absteigender Reihenfolge sortiert werden.ElementInternals.ariaValueMaxEin String, der das
aria-valueMax-Attribut widerspiegelt, welches den maximal zulässigen Wert für ein Bereichs-Widget definiert.ElementInternals.ariaValueMinEin String, der das
aria-valueMin-Attribut widerspiegelt, welches den minimal zulässigen Wert für ein Bereichs-Widget definiert.ElementInternals.ariaValueNowEin String, der das
aria-valueNow-Attribut widerspiegelt, welches den aktuellen Wert für ein Bereichs-Widget definiert.ElementInternals.ariaValueTextEin String, der das
aria-valuetext-Attribut widerspiegelt, welches die menschenlesbare Textalternative zu aria-valuenow für ein Bereichs-Widget definiert.
Instanzeigenschaften, die von ARIA-Elementreferenzen widergespiegelt werden
Die Eigenschaften spiegeln die in den entsprechenden Attributen durchid-Referenz angegebenen Elemente wider, jedoch mit einigen Vorbehalten. Weitere Informationen finden Sie unterReflektierte Elementreferenzen imLeitfaden für reflektierte Attribute.
ElementInternals.ariaActiveDescendantElementEin Element, das das aktuelle aktive Element darstellt, wenn der Fokus auf einem
kompositivWidget, einemKombinationsfeld, einemTextfeld, einerGruppeoder einerAnwendungliegt.Reflektiert dasaria-activedescendant-Attribut.ElementInternals.ariaControlsElementsEin Array von Elementen, deren Inhalt oder Vorhandensein durch das angewendete Element kontrolliert wird.Reflektiert das
aria-controls-Attribut.ElementInternals.ariaDescribedByElementsEin Array von Elementen, die die zugängliche Beschreibung für das angewendete Element enthalten.Reflektiert das
aria-describedby-Attribut.ElementInternals.ariaDetailsElementsEin Array von Elementen, die zugängliche Details für das angewendete Element bereitstellen.Reflektiert das
aria-details-Attribut.ElementInternals.ariaErrorMessageElementsEin Array von Elementen, die eine Fehlermeldung für das angewendete Element bereitstellen.Reflektiert das
aria-errormessage-Attribut.ElementInternals.ariaFlowToElementsEin Array von Elementen, die das nächste Element (oder die nächsten Elemente) in einer alternativen Lesereihenfolge von Inhalten identifizieren, die die allgemeine Standardlesereihenfolge nach Ermessen des Benutzers überschreibt.Reflektiert das
aria-flowto-Attribut.ElementInternals.ariaLabelledByElementsEin Array von Elementen, die den zugänglichen Namen für das angewendete Element bereitstellen.Reflektiert das
aria-labelledby-Attribut.ElementInternals.ariaOwnsElementsEin Array von Elementen, die von dem Element, auf das dies angewendet wird, besessen werden.Dies wird verwendet, um eine visuelle, funktionale oder kontextuelle Beziehung zwischen einem Elternteil und seinen Kindelementen zu definieren, wenn die DOM-Hierarchie nicht verwendet werden kann, um die Beziehung darzustellen.Reflektiert das
aria-owns-Attribut.
Instanz-Methoden
ElementInternals.setFormValue()Legt den Übermittlungswert und Zustand des Elements fest und überträgt diese Informationen an den Benutzeragenten.
ElementInternals.setValidity()Legt die Gültigkeit des Elements fest.
ElementInternals.checkValidity()Überprüft, ob ein Element einer der darauf angewendetenEinschränkungsvalidierungs-Regeln entspricht.
ElementInternals.reportValidity()Überprüft, ob ein Element einer der darauf angewendetenEinschränkungsvalidierungs-Regeln entspricht und sendet auch eine Validierungsnachricht an den Benutzeragenten.
Beispiele
Das folgende Beispiel zeigt, wie ein benutzerdefiniertes, formularassoziiertes Element mitHTMLElement.attachInternals erstellt wird.
class CustomCheckbox extends HTMLElement { static formAssociated = true; constructor() { super(); this.internals_ = this.attachInternals(); } // …}window.customElements.define("custom-checkbox", CustomCheckbox);let element = document.createElement("custom-checkbox");let form = document.createElement("form");// Append element to form to associate itform.appendChild(element);console.log(element.internals_.form);// expected output: <form><custom-checkbox></custom-checkbox></form>Spezifikationen
| Specification |
|---|
| HTML> # the-elementinternals-interface> |
Browser-Kompatibilität
Siehe auch
- Fähigere Formularelemente über web.dev (2019)
- Erstellen von benutzerdefinierten Formularelementen mit ElementInternals über CSS-tricks (2021)