Element: setHTMLUnsafe()-Methode

Baseline 2024
Newly available

Since July 2024, this feature works across the latest devices and browser versions. This feature might not work in older devices or browsers.

Die setHTMLUnsafe()-Methode des Element-Interfaces wird verwendet, um einen HTML-String in ein DocumentFragment zu parsen, welches dann den Subtree des Elements im DOM ersetzt. Das Eingabe-HTML kann deklarative Shadow-Roots enthalten.

Der Suffix "Unsafe" im Methodennamen zeigt an, dass die Methode keine potenziell unsicheren XSS-relevanten Eingaben, wie <script>-Elemente, Skript- oder Event-Handler-Inhaltsattribute, säubert oder entfernt.

Wenn der HTML-String mehr als eine deklarative Shadow-Root in einem bestimmten Shadow-Host definiert, wird nur die erste ShadowRoot erstellt – nachfolgende Deklarationen werden als <template>-Elemente innerhalb dieser Shadow-Root geparst.

Hinweis: Diese Methode sollte anstelle von Element.innerHTML verwendet werden, wenn ein HTML-String deklarative Shadow-Roots enthalten könnte.

Syntax

js
setHTMLUnsafe(html)

Parameter

html

Ein String, der das zu parsende HTML definiert.

Rückgabewert

Keiner (undefined).

Ausnahmen

Keine.

Beispiele

Der folgende Code demonstriert, wie ein HTML-String geparst und in das Element mit der ID target eingefügt wird.

js
const value = "<p>This is a string of text</p>"; // string of HTML

// Get the Element with id "target" and set it with the string.
document.getElementById("target").setHTMLUnsafe(value);

// Result (as a string): "<p>This is a string of text</p>"

Spezifikationen

Specification
HTML
# dom-element-sethtmlunsafe

Browser-Kompatibilität

Siehe auch