ShadowRoot: setHTMLUnsafe() メソッド

Limited availability

This feature is not Baseline because it does not work in some of the most widely-used 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
# dom-shadowroot-sethtmlunsafe

ブラウザーの互換性

関連情報