assignedNodes()
は HTMLSlotElement
インターフェイスのプロパティで、このスロットに割り当てられた一連のノードを返し、 flatten
オプションが true
に設定されていた場合は、このスロットの子孫である他のスロットに割り当てられたノードも返します。割り当てられたノードが見つからない場合は、スロットの代替コンテンツを返します。
構文
var assignedNodes = HTMLSlotElement.assignedNodes(options)
引数
- options Optional
- 返されるノードのためのオプションを設定したオブジェクトです。利用可能な値は以下のとおりです。
flatten
:Boolean
値で、利用可能な子の<slot>
要素すべてに割り当てられたノードを返すか (true
)、返さないか (false
) を示します。既定値はfalse
です。
返値
ノードの配列。
例
以下のスニペットは、 slotchange の例 (ライブで確認) からとりました。
let slots = this.shadowRoot.querySelectorAll('slot');
slots[1].addEventListener('slotchange', function(e) {
let nodes = slots[1].assignedNodes();
console.log('Element in Slot "' + slots[1].name + '" changed to "' + nodes[0].outerHTML + '".');
});
ここではすべてのスロットの参照を取得し、テンプレート内の2番目のスロットに slotchange イベントリスナーを追加します。 — これが例の中でコンテンツの変更を追跡します。
スロットの変更の中で要素が挿入されるたびに、コンソールにどのスロットが変更されたか、スロット内の新しいノードは何であるかをログ出力します。
仕様書
仕様書 | 状態 | 備考 |
---|---|---|
HTML Living Standard assignedNodes の定義 |
現行の標準 |
ブラウザーの対応
BCD tables only load in the browser
このページの互換性一覧表は構造化データから生成されています。データに協力していただけるのであれば、 https://github.com/mdn/browser-compat-data をチェックアウトしてプルリクエストを送信してください。