JavaScript/DOM/Element/attachShadow
Aus SELFHTML-Wiki
< JavaScript | DOM | Element
Die Methode Element.attachShadow() wird bei der Erstellung von Web Components verwendet. Sie dient dazu, einem benutzerdefinierten Element ein Shadow DOM hinzuzufügen. Man kann auch einigen regulären Elementen ein Shadow DOM hinzufügen. Die dafür erlaubten Elemente sind:
- article
- aside
- blockquote
- body
- div
- footer
- h1 bis h6
- header
- main
- nav
- p
- section
- span
Beachten Sie: In früheren Versionen der Spezifikation wurde die Methode
createShadowRoot
beschrieben. Diese ist missbilligt und durch attachShadow
ersetzt worden.Syntax
shadowRoot = element.attachShadow(shadowRootInit);
element
- Das Element, dem ein Shadow DOM hinzugefügt werden soll (der beabsichtigte Shadow Host).
shadowRootInit
- Ein Objekt mit Optionen für die Erzeugung. Es kann die folgenden Eigenschaften erhalten
-
mode
- Ein String, der den Kapselungsmodus für das Shadow DOM festlegt. Er ist entweder
"open"
oder"closed"
. Nur, wenn das Shadow DOM mit mode: "open" erzeugt wurde, liefert die shadowRoot-Eigenschaft des Shadow-Hosts ein ShadowRoot-Objekt zurück. -
delegatesFocus
- Ein boolescher Wert, den man auf true setzen kann, damit bei einem Klick auf ein nichtfokussierbares Element des Shadow DOM der erste fokussierbare Teil des DOM den Fokus erhält. Der Shadow Host gilt dann als fokussiert.
-
slotAssignment
- Ein String, der die Art der Zuordnung von Elementen zu Slots vorgibt. Ein möglicher Wert ist
named
, wodurch Elemente mit einemslot
-Attribut automatisch<slot>
-Elementen zugeordnet werden, derenname
-Attribut den gleiche Wert hat. Der andere mögliche Wert istmanual
, der die automatische Zuordnung verhindert. Statt dessen müssen Sie JavaScript benutzen, um die Zuordnung mittels der attach-Methode des<slot>
-Elements durchzuführen.
-
Zurückgegeben wird ein ShadowRoot-Objekt als Einstiegspunkt in das erzeugte Shadow DOM.
Siehe auch
Weblinks
- WHATWG: attachShadow Beschreibung
- MDN: Element.attachShadow