diff options
author | Peter Bengtsson <mail@peterbe.com> | 2020-12-08 14:40:17 -0500 |
---|---|---|
committer | Peter Bengtsson <mail@peterbe.com> | 2020-12-08 14:40:17 -0500 |
commit | 33058f2b292b3a581333bdfb21b8f671898c5060 (patch) | |
tree | 51c3e392513ec574331b2d3f85c394445ea803c6 /files/ja/web/api/htmlslotelement | |
parent | 8b66d724f7caf0157093fb09cfec8fbd0c6ad50a (diff) | |
download | translated-content-33058f2b292b3a581333bdfb21b8f671898c5060.tar.gz translated-content-33058f2b292b3a581333bdfb21b8f671898c5060.tar.bz2 translated-content-33058f2b292b3a581333bdfb21b8f671898c5060.zip |
initial commit
Diffstat (limited to 'files/ja/web/api/htmlslotelement')
4 files changed, 288 insertions, 0 deletions
diff --git a/files/ja/web/api/htmlslotelement/assignedelements/index.html b/files/ja/web/api/htmlslotelement/assignedelements/index.html new file mode 100644 index 0000000000..d521c11bab --- /dev/null +++ b/files/ja/web/api/htmlslotelement/assignedelements/index.html @@ -0,0 +1,68 @@ +--- +title: HTMLSlotElement.assignedElements() +slug: Web/API/HTMLSlotElement/assignedElements +tags: + - API + - HTMLSlotElement + - Method + - Reference + - Web Components + - assignedElements + - shadow dom +translation_of: Web/API/HTMLSlotElement/assignedElements +--- +<div>{{APIRef("Shadow DOM API")}}</div> + +<p><strong><code>assignedElements()</code></strong> は {{domxref("HTMLSlotElement")}} インターフェイスのプロパティで、このスロットに割り当てられた一連の要素を返します (そしてそれ以外の要素を除きます)。 <code>flatten</code> オプションが <code>true</code> に設定されていた場合は、このスロットの子孫である他のスロットに割り当てられた要素も返します。割り当てられたノードが見つからない場合は、スロットの代替コンテンツを返します。</p> + +<h2 id="Syntax" name="Syntax">構文</h2> + +<pre class="syntaxbox">var assignedElements = HTMLSlotElement.assignedElements(<var>options</var>)</pre> + +<h3 id="Parameters" name="Parameters">引数</h3> + +<dl> + <dt><var>options</var> {{optional_inline}}</dt> + <dd>返されるノードのためのオプションを設定したオブジェクトです。利用可能なオプションは以下のとおりです。 + <ul> + <li><code>flatten</code>: {{jsxref('Boolean')}} 値で、利用可能な子の <code><slot></code> 要素すべてに割り当てられた要素を返すか (<code>true</code>)、返さないか (<code>false</code>) を示します。既定値は <code>false</code> です。</li> + </ul> + </dd> +</dl> + +<h3 id="Return_value" name="Return_value">返値</h3> + +<p>要素の配列。</p> + +<h2 id="Examples" name="Examples">例</h2> + +<pre class="brush: js">let slots = this.shadowRoot.querySelector('slot'); +let elements = slots.assignedElements({flatten: true}); +</pre> + +<h2 id="Specifications" name="Specifications">仕様書</h2> + +<table class="standard-table"> + <thead> + <tr> + <th scope="col">仕様書</th> + <th scope="col">状態</th> + <th scope="col">備考</th> + </tr> + </thead> + <tbody> + <tr> + <td>{{SpecName('HTML WHATWG','#dom-slot-assignedelements','assignedElements()')}}</td> + <td>{{Spec2('HTML WHATWG')}}</td> + <td> </td> + </tr> + </tbody> +</table> + +<h2 id="Browser_compatibility" name="Browser_compatibility">ブラウザーの対応</h2> + +<div> +<div class="hidden">このページの互換性一覧表は構造化データから生成されています。データに協力していただけるのであれば、 <a class="external" href="https://github.com/mdn/browser-compat-data">https://github.com/mdn/browser-compat-data</a> をチェックアウトしてプルリクエストを送信してください。</div> + +<p>{{Compat("api.HTMLSlotElement.assignedElements")}}</p> +</div> diff --git a/files/ja/web/api/htmlslotelement/assignednodes/index.html b/files/ja/web/api/htmlslotelement/assignednodes/index.html new file mode 100644 index 0000000000..6560fbe803 --- /dev/null +++ b/files/ja/web/api/htmlslotelement/assignednodes/index.html @@ -0,0 +1,74 @@ +--- +title: HTMLSlotElement.assignedNodes() +slug: Web/API/HTMLSlotElement/assignedNodes +tags: + - API + - HTMLSlotElement + - Method + - Reference + - assignedNodes + - shadow dom + - メソッド +translation_of: Web/API/HTMLSlotElement/assignedNodes +--- +<div>{{APIRef("Shadow DOM API")}}</div> + +<p><strong><code>assignedNodes()</code></strong> は {{domxref("HTMLSlotElement")}} インターフェイスのプロパティで、このスロットに割り当てられた一連のノードを返し、 <code>flatten</code> オプションが <code>true</code> に設定されていた場合は、このスロットの子孫である他のスロットに割り当てられたノードも返します。割り当てられたノードが見つからない場合は、スロットの代替コンテンツを返します。</p> + +<h2 id="Syntax" name="Syntax">構文</h2> + +<pre class="syntaxbox">var assignedNodes = HTMLSlotElement.assignedNodes(<var>options</var>)</pre> + +<h3 id="Parameters" name="Parameters">引数</h3> + +<dl> + <dt><var>options</var> {{optional_inline}}</dt> + <dd>返されるノードのためのオプションを設定したオブジェクトです。利用可能な値は以下のとおりです。 + <ul> + <li><code>flatten</code>: {{jsxref('Boolean')}} 値で、利用可能な子の <code><slot></code> 要素すべてに割り当てられたノードを返すか (<code>true</code>)、返さないか (<code>false</code>) を示します。既定値は <code>false</code> です。</li> + </ul> + </dd> +</dl> + +<h3 id="Return_value" name="Return_value">返値</h3> + +<p>ノードの配列。</p> + +<h2 id="Examples" name="Examples">例</h2> + +<p>以下のスニペットは、 <a href="https://github.com/mdn/web-components-examples/tree/master/slotchange">slotchange の例</a> (<a href="https://mdn.github.io/web-components-examples/slotchange/">ライブで確認</a>) からとりました。</p> + +<pre class="brush: js">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 + '".'); +});</pre> + +<p>ここではすべてのスロットの参照を取得し、テンプレート内の2番目のスロットに slotchange イベントリスナーを追加します。 — これが例の中でコンテンツの変更を追跡します。</p> + +<p>スロットの変更の中で要素が挿入されるたびに、コンソールにどのスロットが変更されたか、スロット内の新しいノードは何であるかをログ出力します。</p> + +<h2 id="Specifications" name="Specifications">仕様書</h2> + +<table class="standard-table"> + <thead> + <tr> + <th scope="col">仕様書</th> + <th scope="col">状態</th> + <th scope="col">備考</th> + </tr> + </thead> + <tbody> + <tr> + <td>{{SpecName('HTML WHATWG','scripting.html#dom-slot-assignednodes','assignedNodes')}}</td> + <td>{{Spec2('HTML WHATWG')}}</td> + <td> </td> + </tr> + </tbody> +</table> + +<h2 id="Browser_compatibility" name="Browser_compatibility">ブラウザーの対応</h2> + +<div class="hidden">このページの互換性一覧表は構造化データから生成されています。データに協力していただけるのであれば、 <a class="external" href="https://github.com/mdn/browser-compat-data">https://github.com/mdn/browser-compat-data</a> をチェックアウトしてプルリクエストを送信してください。</div> + +<p>{{Compat("api.HTMLSlotElement.assignedNodes")}}</p> diff --git a/files/ja/web/api/htmlslotelement/index.html b/files/ja/web/api/htmlslotelement/index.html new file mode 100644 index 0000000000..77b8202fcb --- /dev/null +++ b/files/ja/web/api/htmlslotelement/index.html @@ -0,0 +1,63 @@ +--- +title: HTMLSlotElement +slug: Web/API/HTMLSlotElement +translation_of: Web/API/HTMLSlotElement +--- +<p>{{APIRef('Web Components')}}</p> + +<p><strong><code>HTMLSlotElement</code></strong> は <a href="/en-US/docs/Web/Web_Components/Shadow_DOM">Shadow DOM API</a> のインターフェイスで、 {{HTMLElement("slot")}} 要素の名前とこの要素に割り当てられたノードにアクセスできます。</p> + +<h2 id="Properties" name="Properties">プロパティ</h2> + +<dl> + <dt>{{domxref('HTMLSlotElement.name')}}</dt> + <dd>{{domxref("DOMString")}}: スロットの名前を取得または設定する際に使えます。</dd> +</dl> + +<h2 id="Methods" name="Methods">メソッド</h2> + +<dl> + <dt>{{domxref('HTMLSlotElement.assignedNodes()')}}</dt> + <dd>このスロットに割り当てられた一連のノードを返し、 <code>flatten</code> オプションが <code>true</code> に設定されていた場合は、このスロットの子孫である他のスロットに割り当てられたノードも返します。割り当てられたノードが見つからない場合は、スロットの代替コンテンツを返します。</dd> + <dt>{{domxref('HTMLSlotElement.assignedElements()')}}</dt> + <dd>このスロットに割り当てられた一連の要素を返します (それ以外のノードは返しません)。 <code>flatten</code> オプションが <code>true</code> に設定されていた場合は、このスロットの子孫である他のスロットに割り当てられた要素も返します。割り当てられたノードが見つからない場合は、スロットの代替コンテンツを返します。</dd> +</dl> + +<h2 id="Examples" name="Examples">例</h2> + +<p>以下のスニペットは、 <a href="https://github.com/mdn/web-components-examples/tree/master/slotchange">slotchange の例</a> (<a href="https://mdn.github.io/web-components-examples/slotchange/">ライブで確認</a>) からとりました。</p> + +<pre class="brush: js">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 + '".'); +});</pre> + +<p>ここではすべてのスロットの参照を取得し、テンプレート内の2番目のスロットに slotchange イベントリスナーを追加します。 — これが例の中でコンテンツの変更を追跡します。</p> + +<p>スロットの変更の中で要素が挿入されるたびに、コンソールにどのスロットが変更されたか、スロット内の新しいノードは何であるかをログ出力します。</p> + +<h2 id="Specifications" name="Specifications">仕様書</h2> + +<table class="standard-table"> + <thead> + <tr> + <th scope="col">仕様書</th> + <th scope="col">状態</th> + <th scope="col">備考</th> + </tr> + </thead> + <tbody> + <tr> + <td>{{SpecName('HTML WHATWG','scripting.html#htmlslotelement','HTMLSlotElement')}}</td> + <td>{{Spec2('HTML WHATWG')}}</td> + <td> </td> + </tr> + </tbody> +</table> + +<h2 id="Browser_compatibility" name="Browser_compatibility">ブラウザーの対応</h2> + +<div class="hidden">このページの互換性一覧表は構造化データから生成されています。データに協力していただけるのであれば、 <a class="external" href="https://github.com/mdn/browser-compat-data">https://github.com/mdn/browser-compat-data</a> をチェックアウトしてプルリクエストを送信してください。</div> + +<p>{{Compat("api.HTMLSlotElement")}}</p> diff --git a/files/ja/web/api/htmlslotelement/slotchange_event/index.html b/files/ja/web/api/htmlslotelement/slotchange_event/index.html new file mode 100644 index 0000000000..295a4cd715 --- /dev/null +++ b/files/ja/web/api/htmlslotelement/slotchange_event/index.html @@ -0,0 +1,83 @@ +--- +title: 'HTMLSlotElement: slotchange イベント' +slug: Web/API/HTMLSlotElement/slotchange_event +tags: + - Event + - Reference + - Webコンポーネント + - events + - slotchange + - イベント + - ウェブコンポーネント + - 仮想DOM +translation_of: Web/API/HTMLSlotElement/slotchange_event +--- +<div>{{APIRef}}</div> + +<p><span class="seoSummary"><code><strong>slotchange</strong></code> イベントは、 {{DOMxRef("HTMLSlotElement")}} インスタンス({{HTMLElement("slot")}} 要素) において、そのスロットが含まれるノードが変更された場合に発生します。</span></p> + +<div class="note"> +<p><strong>メモ:</strong> スロットされたノードの子ノードが変更された場合、 <code>slotchange</code> イベントは発生しません。つまり実際のノード自体を変更 (例えば、追加または削除) した場合に限ります。</p> +</div> + +<table class="properties"> + <tbody> + <tr> + <th scope="row">バブリング</th> + <td>あり</td> + </tr> + <tr> + <th scope="row">キャンセル</th> + <td>不可</td> + </tr> + <tr> + <th scope="row">インターフェイス</th> + <td>{{DOMxRef("Event")}}</td> + </tr> + <tr> + <th scope="row">イベントハンドラープロパティ</th> + <td>なし</td> + </tr> + </tbody> +</table> + +<h2 id="Examples" name="Examples">例</h2> + +<p>次のスニペットは、 <a href="https://github.com/mdn/web-components-examples/tree/master/slotchange">slotchange の例</a>から取られています (<a href="https://mdn.github.io/web-components-examples/slotchange/">ライブも参照してください</a>)。</p> + +<pre class="brush: js">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 + '".'); +});</pre> + +<p>ここではすべての <code><slot></code> への参照を取得し、テンプレートの2番目のスロットに <code>slotchange</code> イベントリスナーを追加します。この例ではコンテンツが変更されているスロットです。</p> + +<p>スロットに挿入された要素が変更されるたびに、どのスロットが変更されたか、スロット内の新しいノードが何であるかを示すレポートがコンソールに記録されます。</p> + +<h2 id="Specifications" name="Specifications">仕様書</h2> + +<table class="standard-table"> + <thead> + <tr> + <th scope="col">仕様書</th> + <th scope="col">状態</th> + <th scope="col">備考</th> + </tr> + </thead> + <tbody> + <tr> + <td>{{SpecName("DOM WHATWG", "#mutation-observers", '"Mutation observers" and slotchange event')}}</td> + <td>{{Spec2("DOM WHATWG")}}</td> + <td>初回定義</td> + </tr> + </tbody> +</table> + +<h2 id="Browser_compatibility" name="Browser_compatibility">ブラウザーの互換性</h2> + +<p>{{Compat("api.HTMLSlotElement.slotchange_event")}}</p> + +<h2 id="See_also" name="See_also">関連情報</h2> + +<p>{{domxref("HTMLSlotElement")}}</p> |