このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docs コミュニティーについてもっと知り、仲間になるにはこちらから。

View in English Always switch to English

ShadowRoot: getHTML() メソッド

Baseline 2024
最近利用可能

2024年9月以降、この機能は最新のバージョンの端末およびブラウザーで動作します。古い端末やブラウザーでは動作しないことがあります。

getHTML() は ShadowRoot インターフェイスのメソッドで、シャドウルートの DOM を HTML 文字列にシリアライズするために使用します。

このメソッドは、options 引数を提供しており、シャドウルートである子ノードのシリアライズができるようにします。options を使用すると、シリアライズ可能なネストされたシャドウルートを含めることができます。また、ShadowRoot オブジェクトの指定された配列を含めることもできます。この配列は、開いているものも閉じているものも含みます。

引数がない場合、シャドウルートである子ノードはシリアライズされず、このメソッドは Element.innerHTML の値を読み取る場合と同じ動作をします。

なお、一部のブラウザーでは、属性値内に < や > 文字が現れる場合、これらを &lt; や &gt; としてシリアライズします(ブラウザーの互換性を参照)。 これは、攻撃者が無害化関数を迂回するような入力を仕掛けることで、クロスサイトスクリプティング (XSS) 攻撃をすることができる、潜在的なセキュリティ上の脆弱性(ミューテーション XSS(英語))を防ぐためのものです。

構文

js
getHTML(options)

引数

options 省略可

次のオプションのパラメーターを持つオプションオブジェクトです。

serializableShadowRoots

論理値で、シリアライズ可能なシャドウルートを含めるかどうかを指定します。 デフォルト値は false です。

shadowRoots

シリアライズする ShadowRoot オブジェクトの配列です。 これらは、serializable としてマークされているかどうか、または開かれているか閉じられたかに関係なく含まれます。 デフォルト値は空の配列です。

返値

文字列で、シャドウルートの HTML シリアライズを表します。

例外

なし。

仕様書

仕様書
HTML
# dom-shadowroot-gethtml

ブラウザーの互換性

関連情報