ShadowRoot: setHTMLUnsafe() メソッド

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.

setHTMLUnsafe()ShadowRoot インターフェイスのメソッドで、HTML の文字列を DocumentFragment に解釈できるもので、DOM 内の要素のサブツリーを置き換えます。 入力 HTML には、宣言型のシャドウルートを含めることができます。

メソッド名の接尾辞 "Unsafe" は、このメソッドが、<script> 要素やスクリプト、イベントハンドラーの content 属性など、潜在的に危険な XSS 関連の入力がサニタイズ(無害化)または除去されないことを示しています。

HTML の文字列が、特定のシャドウホストで複数の宣言型のシャドウルートを定義している場合、最初の ShadowRoot のみが作成されます。その後の宣言は、そのシャドウルート内の <template> 要素として解釈できます。

メモ: HTML の文字列が宣言的なシャドウルートを含む可能性がある場合は、ShadowRoot.innerHTML の代わりにこのメソッドを使用しましょう。

構文

js
setHTMLUnsafe(html)

引数

html

文字列で、解釈する HTML を定義します。

返値

なし (undefined)。

例外

なし。

仕様書

Specification
HTML Standard
# dom-shadowroot-sethtmlunsafe

ブラウザーの互換性

BCD tables only load in the browser

関連情報