Unicode や UTF-8 文字列の使用については、 {{domxref("WindowOrWorkerGlobalScope.btoa", "btoa()")}} の「Uncode 文字列」の節を参照してください。
-
- のポリフィルを利用することができます。
+
+## 仕様書
+
+| 仕様書 | 状態 | 備考 |
+| ---------------------------------------------------------------------------------------------------- | -------------------------------- | -------------------------------------------------------------------------------------------------------------- |
+| {{SpecName('HTML WHATWG', '#dom-atob', 'WindowOrWorkerGlobalScope.atob()')}} | {{Spec2('HTML WHATWG')}} | 最新の仕様で、メソッドを `WindowOrWorkerGlobalScope` ミックスインに移動。 |
+| {{SpecName('HTML5.1', '#dom-windowbase64-atob', 'WindowBase64.atob()')}} | {{Spec2('HTML5.1')}} | {{SpecName("HTML WHATWG")}} のスナップショット、変更なし。 |
+| {{SpecName("HTML5 W3C", "#dom-windowbase64-atob", "WindowBase64.atob()")}} | {{Spec2('HTML5 W3C')}} | {{SpecName("HTML WHATWG")}} のスナップショット。 `WindowBase64` の作成 (以前の対象だったプロパティ)。 |
+
+## ブラウザーの互換性
+
+{{Compat("api.WindowOrWorkerGlobalScope.atob")}}
+
+## 関連情報
+
+- [`data` URIs](/ja/docs/Web/HTTP/Basics_of_HTTP/Data_URIs)
+- {{domxref("WindowOrWorkerGlobalScope.btoa","btoa()")}}
+- [Components.utils.importGlobalProperties](/ja/docs/Mozilla/Tech/XPCOM/Language_Bindings/Components.utils.importGlobalProperties)
diff --git a/files/ja/web/api/audiobuffersourcenode/index.html b/files/ja/web/api/audiobuffersourcenode/index.html
deleted file mode 100644
index e35221f2f9ea6a..00000000000000
--- a/files/ja/web/api/audiobuffersourcenode/index.html
+++ /dev/null
@@ -1,166 +0,0 @@
----
-title: AudioBufferSourceNode
-slug: Web/API/AudioBufferSourceNode
-translation_of: Web/API/AudioBufferSourceNode
----
-{{APIRef("Web Audio API")}}
-
-
-
AudioBufferSourceNode
は{{domxref("AudioScheduledSourceNode")}}を継承するインタフェースで、{{domxref("AudioBuffer")}}に保存されたインメモリ音声データからなるオーディオソースを表します。AudioBufferSourceNode
は、再生するタイミングに高い正確性が求められる音声を繰り返し再生する場合特に有益です。例えば、特定のリズムに合わせて、ディスクやネットワークからではなくメモリから読みだした音声を再生するといった場合です。正確なタイミングで音声を再生したいものの、音声データがディスクやネットワークから読み込まれる必要がある場合は{{domxref("AudioWorkletNode")}}を使用してください。
-
-
{{InheritanceDiagram(600, 140)}}
-
-
AudioBufferSourceNode
は入力がなく、その出力は 1 つで、出力されるチャンネル数は AudioBufferSourceNode.buffer で参照される {{domxref("AudioBuffer")}} のチャンネル数によって決まります。この属性値が NULL の場合、つまりバッファがセットされていない場合、無音が出力されます。{{domxref("AudioBufferSourceNode")}}は一度しか再生できません。つまり、AudioBufferSourceNode.start()
の呼び出しは一度しかできません。もし、再び再生するならば、別のAudioBufferSourceNode
を生成する必要があります。これらのノードは安価に生成でき、AudioBuffer
は何度も再生できます。よくAudioBufferSourceNode
は「撃ちっぱなし」で使わなければならない、と言われます。つまり、一度再生を始めると、そのノードへの参照はなくなり、自動的にガベージコレクトされます。
-
-
-AudioBufferSourceNode.stop()
は何度も呼ぶことができます。AudioBufferSourceNode
がバッファの最後に達していないならば、最後の呼び出しがその前の呼び出しを上書きします。
-
-
-
-
-
-
-
- Number of inputs |
- 0 |
-
-
- Number of outputs |
- 1 |
-
-
- Channel count |
- defined by the associated {{domxref("AudioBuffer")}} |
-
-
-
-
-コンストラクタ
-
-
- - {{domxref("AudioBufferSourceNode.AudioBufferSourceNode", "AudioBufferSourceNode()")}}
- AudioBufferSourceNode
オブジェクトを新しく作成して返します。{{domxref("AudioBufferSourceNode")}}は{{domxref("AudioContext.createBufferSource()")}}メソッドを用いてインスタンス化することができます。
-
-
-プロパティ
-
-親である{{domxref("AudioNode")}}のプロパティを継承しています。
-
-
- - {{domxref("AudioBufferSourceNode.buffer")}}
- - 再生される音声の{{domxref("AudioBuffer")}}です。NULLの場合1チャンネルからなる無音の音声(すべてのサンプルが0.0)です。
- - {{domxref("AudioBufferSourceNode.detune")}}
- - セント単位のデチューンを表すk-rate{{domxref("AudioParam")}}です。この値と
playbackRate
の組み合わせで音声が再生される速度が決定されます。デフォルト値は0(デチューンなし)で、公称範囲は -∞ から ∞ です。
- - {{domxref("AudioBufferSourceNode.loop")}}
- - {{domxref("AudioBuffer")}}の最後に達したとき再び再生するかを表すブール値です。デフォルトは
false
です。
- - {{domxref("AudioBufferSourceNode.loopStart")}} {{optional_inline}}
- loop
がtrue
のとき、{{domxref("AudioBuffer")}}を再び再生する位置(秒単位)を表す浮動小数点数です。デフォルトは0で、これは音声の初めからループが始まることを意味します。
- - {{domxref("AudioBufferSourceNode.loopEnd")}} {{optional_inline}}
- loop
がtrue
のとき、{{domxref("AudioBuffer")}}の再生を停止してloopStart
の地点に戻る位置(秒単位)を表す浮動小数点数です。デフォルトは0です。
- - {{domxref("AudioBufferSourceNode.playbackRate")}}
- - 再生される音声の速度要素を表すa-rate{{domxref("AudioParam")}}です。この値が1.0のとき通常のサンプリングレートで出力されます。出力にピッチの修正が適用されない場合は、サンプルのピッチの変更に使うことができます。この値と
detune
の組み合わせで音声が再生される速度が決定されます。
-
-
-イベントハンドラ
-
-親である{{domxref("AudioScheduledSourceNode")}}のイベントハンドラを継承しています。
-
-
- - {{domxref("AudioBufferSourceNode.onended")}}
- - {{event("ended_(Web_Audio)", "ended")}}イベントに関するコールバックを格納したイベントハンドラです。
-
-
-メソッド
-
-親である{{domxref("AudioNode")}}のメソッドを継承しています。
-
-
- - {{domxref("AudioBufferSourceNode.start()")}}
- - 設定された音声の再生をスケジュールするか、直ちに再生します。
- - {{domxref("AudioBufferSourceNode.stop()")}}
- - 設定された音声の再生の停止をスケジュールするか、直ちに停止します。
-
-
-例
-
-次の例は、2秒間のバッファを生成し、ホワイトノイズを書き込み、AudioBufferSourceNode
で再生します。コメントは何をしているかを簡単に説明しています。
-
-
-
-var audioCtx = new (window.AudioContext || window.webkitAudioContext)();
-var button = document.querySelector('button');
-var pre = document.querySelector('pre');
-var myScript = document.querySelector('script');
-
-pre.innerHTML = myScript.innerHTML;
-
ステレオvar channels = 2;
AudioContextのサンプルレートで2秒間の空のステレオバッファを生成するvar frameCount = audioCtx.sampleRate * 2.0;
-
-var myArrayBuffer = audioCtx.createBuffer(2, frameCount, audioCtx.sampleRate);
-
-button.onclick = function() {
-
バッファにホワイトノイズを書き込む;
- // 単なる-1.0から1.0の間の乱数の値である for (var channel = 0; channel < channels; channel++) {
-
実際のデータの配列を得る var nowBuffering = myArrayBuffer.getChannelData(channel);
- for (var i = 0; i < frameCount; i++) {
-
Math.random()は[0; 1.0]である
- // 音声は[-1.0; 1.0]である必要がある nowBuffering[i] = Math.random() * 2 - 1;
- }
- }
-
-
AudioBufferSourceNodeを得る
- // これはAudioBufferを再生するときに使うAudioNodeである var source = audioCtx.createBufferSource();
-
AudioBufferSourceNodeにバッファを設定する source.buffer = myArrayBuffer;
-
AudioBufferSourceNodeを出力先に接続すると音声が聞こえるようになる source.connect(audioCtx.destination);
-
音源の再生を始める source.start();
-}
-
-
-
注: decodeAudioData
の例は、{{domxref("AudioContext.decodeAudioData")}}のページを参照してください。
-
-
-仕様
-
-
-
-
- Specification |
- Status |
- Comment |
-
-
- {{SpecName('Web Audio API', '#AudioBufferSourceNode-section', 'AudioBufferSourceNode')}} |
- {{Spec2('Web Audio API')}} |
- |
-
-
-
-
-ブラウザ互換性
-
-{{Compat("api.AudioBufferSourceNode")}}
-
-Chrome notes
-
-The buffer property was removed in {{CompatChrome(44.0)}}.
-
-
-
-
-関連情報
-
-
diff --git a/files/ja/web/api/audiobuffersourcenode/index.md b/files/ja/web/api/audiobuffersourcenode/index.md
new file mode 100644
index 00000000000000..962d9a591e5a1f
--- /dev/null
+++ b/files/ja/web/api/audiobuffersourcenode/index.md
@@ -0,0 +1,125 @@
+---
+title: AudioBufferSourceNode
+slug: Web/API/AudioBufferSourceNode
+translation_of: Web/API/AudioBufferSourceNode
+---
+{{APIRef("Web Audio API")}}
+
+**`AudioBufferSourceNode`**は{{domxref("AudioScheduledSourceNode")}}を継承するインタフェースで、{{domxref("AudioBuffer")}}に保存されたインメモリ音声データからなるオーディオソースを表します。`AudioBufferSourceNode`は、再生するタイミングに高い正確性が求められる音声を繰り返し再生する場合特に有益です。例えば、特定のリズムに合わせて、ディスクやネットワークからではなくメモリから読みだした音声を再生するといった場合です。正確なタイミングで音声を再生したいものの、音声データがディスクやネットワークから読み込まれる必要がある場合は{{domxref("AudioWorkletNode")}}を使用してください。
+
+{{InheritanceDiagram(600, 140)}}
+
+`AudioBufferSourceNode` は入力がなく、その出力は 1 つで、出力されるチャンネル数は AudioBufferSourceNode.buffer で参照される {{domxref("AudioBuffer")}} のチャンネル数によって決まります。この属性値が NULL の場合、つまりバッファがセットされていない場合、無音が出力されます。{{domxref("AudioBufferSourceNode")}}は一度しか再生できません。つまり、`AudioBufferSourceNode.start()`の呼び出しは一度しかできません。もし、再び再生するならば、別の`AudioBufferSourceNode`を生成する必要があります。これらのノードは安価に生成でき、`AudioBuffer`は何度も再生できます。よく`AudioBufferSourceNode`は「撃ちっぱなし」で使わなければならない、と言われます。つまり、一度再生を始めると、そのノードへの参照はなくなり、自動的にガベージコレクトされます。
+
+`AudioBufferSourceNode.stop()`は何度も呼ぶことができます。`AudioBufferSourceNode`がバッファの最後に達していないならば、最後の呼び出しがその前の呼び出しを上書きします。
+
+![The AudioBufferSourceNode takes the content of an AudioBuffer and m](https://mdn.mozillademos.org/files/5155/WebAudioAudioBufferSourceNode.png)
+
+| Number of inputs | `0` |
+| ----------------- | -------------------------------------------------------------- |
+| Number of outputs | `1` |
+| Channel count | defined by the associated {{domxref("AudioBuffer")}} |
+
+## コンストラクタ
+
+- {{domxref("AudioBufferSourceNode.AudioBufferSourceNode", "AudioBufferSourceNode()")}}
+ - : `AudioBufferSourceNode` オブジェクトを新しく作成して返します。{{domxref("AudioBufferSourceNode")}}は{{domxref("AudioContext.createBufferSource()")}}メソッドを用いてインスタンス化することができます。
+
+## プロパティ
+
+_親である{{domxref("AudioNode")}}のプロパティを継承しています。_
+
+- {{domxref("AudioBufferSourceNode.buffer")}}
+ - : 再生される音声の{{domxref("AudioBuffer")}}です。NULL の場合 1 チャンネルからなる無音の音声(すべてのサンプルが 0.0)です。
+- {{domxref("AudioBufferSourceNode.detune")}}
+ - : [セント](https://ja.wikipedia.org/wiki/%E3%82%BB%E3%83%B3%E3%83%88_%28%E9%9F%B3%E6%A5%BD%29)単位のデチューンを表す[k-rate](/ja/docs/DOM/AudioParam#k-rate){{domxref("AudioParam")}}です。この値と`playbackRate`の組み合わせで音声が再生される速度が決定されます。デフォルト値は 0(デチューンなし)で、公称範囲は -∞ から ∞ です。
+- {{domxref("AudioBufferSourceNode.loop")}}
+ - : {{domxref("AudioBuffer")}}の最後に達したとき再び再生するかを表すブール値です。デフォルトは`false`です。
+- {{domxref("AudioBufferSourceNode.loopStart")}} {{optional_inline}}
+ - : `loop`が`true`のとき、{{domxref("AudioBuffer")}}を再び再生する位置(秒単位)を表す浮動小数点数です。デフォルトは 0 で、これは音声の初めからループが始まることを意味します。
+- {{domxref("AudioBufferSourceNode.loopEnd")}} {{optional_inline}}
+ - : `loop`が`true`のとき、{{domxref("AudioBuffer")}}の再生を停止して`loopStart`の地点に戻る位置(秒単位)を表す浮動小数点数です。デフォルトは 0 です。
+- {{domxref("AudioBufferSourceNode.playbackRate")}}
+ - : 再生される音声の速度要素を表す[a-rate](/ja/docs/Web/API/AudioParam#a-rate){{domxref("AudioParam")}}です。この値が 1.0 のとき通常のサンプリングレートで出力されます。出力にピッチの修正が適用されない場合は、サンプルのピッチの変更に使うことができます。この値と`detune`の組み合わせで音声が再生される速度が決定されます。
+
+### イベントハンドラ
+
+_親である{{domxref("AudioScheduledSourceNode")}}のイベントハンドラを継承しています。_
+
+- {{domxref("AudioBufferSourceNode.onended")}}
+ - : {{event("ended_(Web_Audio)", "ended")}}イベントに関するコールバックを格納したイベントハンドラです。
+
+## メソッド
+
+_親である{{domxref("AudioNode")}}のメソッドを継承しています。_
+
+- {{domxref("AudioBufferSourceNode.start()")}}
+ - : 設定された音声の再生をスケジュールするか、直ちに再生します。
+- {{domxref("AudioBufferSourceNode.stop()")}}
+ - : 設定された音声の再生の停止をスケジュールするか、直ちに停止します。
+
+## 例
+
+次の例は、2 秒間のバッファを生成し、ホワイトノイズを書き込み、[`AudioBufferSourceNode`](/ja/docs/Web/API/AudioBufferSourceNode "The AudioBufferSourceNode インタフェーエスはメモリ上にある音声データ (AudioBuffer) を扱うオーディオソースを表します。このオブジェクトはオーディオソースとなる AudioNode です。")で再生します。コメントは何をしているかを簡単に説明しています。
+
+> **Note:** **注:** [コードをすぐに実行する](https://mdn.github.io/webaudio-examples/audio-buffer/)ことや、[ソースコードを閲覧する](https://github.com/mdn/webaudio-examples/blob/master/audio-buffer/index.html)こともできます。
+
+```js
+var audioCtx = new (window.AudioContext || window.webkitAudioContext)();
+var button = document.querySelector('button');
+var pre = document.querySelector('pre');
+var myScript = document.querySelector('script');
+
+pre.innerHTML = myScript.innerHTML;
+
+// ステレオ
+var channels = 2;
+// AudioContextのサンプルレートで2秒間の空のステレオバッファを生成する
+var frameCount = audioCtx.sampleRate * 2.0;
+
+var myArrayBuffer = audioCtx.createBuffer(2, frameCount, audioCtx.sampleRate);
+
+button.onclick = function() {
+ // バッファにホワイトノイズを書き込む;
+ // 単なる-1.0から1.0の間の乱数の値である
+ for (var channel = 0; channel < channels; channel++) {
+ // 実際のデータの配列を得る
+ var nowBuffering = myArrayBuffer.getChannelData(channel);
+ for (var i = 0; i < frameCount; i++) {
+ // Math.random()は[0; 1.0]である
+ // 音声は[-1.0; 1.0]である必要がある
+ nowBuffering[i] = Math.random() * 2 - 1;
+ }
+ }
+
+ // AudioBufferSourceNodeを得る
+ // これはAudioBufferを再生するときに使うAudioNodeである
+ var source = audioCtx.createBufferSource();
+ // AudioBufferSourceNodeにバッファを設定する
+ source.buffer = myArrayBuffer;
+ // AudioBufferSourceNodeを出力先に接続すると音声が聞こえるようになる
+ source.connect(audioCtx.destination);
+ // 音源の再生を始める
+ source.start();
+}
+```
+
+> **Note:** **注:** `decodeAudioData`の例は、{{domxref("AudioContext.decodeAudioData")}}のページを参照してください。
+
+## 仕様
+
+| Specification | Status | Comment |
+| -------------------------------------------------------------------------------------------------------------------- | ------------------------------------ | ------- |
+| {{SpecName('Web Audio API', '#AudioBufferSourceNode-section', 'AudioBufferSourceNode')}} | {{Spec2('Web Audio API')}} | |
+
+## ブラウザ互換性
+
+{{Compat("api.AudioBufferSourceNode")}}
+
+### Chrome notes
+
+The buffer property was removed in {{CompatChrome(44.0)}}.
+
+## 関連情報
+
+- [Using the Web Audio API](/ja/docs/Web/API/Web_Audio_API/Using_Web_Audio_API)
diff --git a/files/ja/web/api/audiocontext/audiocontext/index.html b/files/ja/web/api/audiocontext/audiocontext/index.html
deleted file mode 100644
index 83e3e917b4ff07..00000000000000
--- a/files/ja/web/api/audiocontext/audiocontext/index.html
+++ /dev/null
@@ -1,37 +0,0 @@
----
-title: AudioContext()
-slug: Web/API/AudioContext/AudioContext
-translation_of: Web/API/AudioContext/AudioContext
----
-{{APIRef("Web Audio API")}}{{SeeCompatTable}}
-
-AudioContext()
コンストラクタは新しい {{domxref("AudioContext")}} オブジェクトを作成します。このオブジェクトはオーディオモジュールが相互に接続された音声処理のグラフを表現しています。このグラフ中で用いられるオーディオモジュールは {{domxref("AudioNode")}} として表現されます。
-
-記法
-
-var audioContext = new AudioContext(options)
-
-引数
-
-なし。
-
-仕様
-
-
-
-
- 仕様 |
- 状態 |
- コメント |
-
-
- {{SpecName('Web Audio API','#AudioContext','AudioContext()')}} |
- {{Spec2('Web Audio API')}} |
- Initial definition. |
-
-
-
-
-ブラウザー互換性
-
-{{Compat("api.AudioContext.AudioContext")}}
diff --git a/files/ja/web/api/audiocontext/audiocontext/index.md b/files/ja/web/api/audiocontext/audiocontext/index.md
new file mode 100644
index 00000000000000..fafcf27380ef5a
--- /dev/null
+++ b/files/ja/web/api/audiocontext/audiocontext/index.md
@@ -0,0 +1,26 @@
+---
+title: AudioContext()
+slug: Web/API/AudioContext/AudioContext
+translation_of: Web/API/AudioContext/AudioContext
+---
+{{APIRef("Web Audio API")}}{{SeeCompatTable}}
+
+**`AudioContext()`** コンストラクタは新しい {{domxref("AudioContext")}} オブジェクトを作成します。このオブジェクトはオーディオモジュールが相互に接続された音声処理のグラフを表現しています。このグラフ中で用いられるオーディオモジュールは {{domxref("AudioNode")}} として表現されます。
+
+## 記法
+
+ var audioContext = new AudioContext(options)
+
+### 引数
+
+なし。
+
+**仕様**
+
+| 仕様 | 状態 | コメント |
+| ------------------------------------------------------------------------------------ | ------------------------------------ | ------------------- |
+| {{SpecName('Web Audio API','#AudioContext','AudioContext()')}} | {{Spec2('Web Audio API')}} | Initial definition. |
+
+## ブラウザー互換性
+
+{{Compat("api.AudioContext.AudioContext")}}
diff --git a/files/ja/web/api/audiocontext/close/index.html b/files/ja/web/api/audiocontext/close/index.html
deleted file mode 100644
index f2c7c1c8f9fe4b..00000000000000
--- a/files/ja/web/api/audiocontext/close/index.html
+++ /dev/null
@@ -1,65 +0,0 @@
----
-title: AudioContext.close()
-slug: Web/API/AudioContext/close
-translation_of: Web/API/AudioContext/close
----
-{{ APIRef("Web Audio API") }}
-
-{{ domxref("AudioContext") }}インターフェースのclose()
メソッドは、オーディオコンテキストを閉じて使っていたシステムのオーディオリソースを全て解放します。
-
-閉じたコンテキストは新しいノードを生成できませんが、音声データのデコードやバッファの生成などは可能です。
-
-この関数は、他の参照も同様に解放されない限り、AudioContextが生成したオブジェクトは自動的には解放しません。しかし、これはオーディオリソースを強制的に解放します。よって、オーディオコンテキストの更なる生成と使用はできなくなり、オーディオコンテキストの時間の流れは止まり、音声データの処理は停止します。
- 全てのAudioContext-creation-blockingリソースが解放されたとき、返された{{jsxref("Promise")}}が完了します。このメソッドは{{domxref("OfflineAudioContext")}}で呼ばれたときINVALID_STATE_ERR
例外が発生します。
-
-
-構文
-
-var audioCtx = new AudioContext();
-audioCtx.close().then(function() { ... });
-
-
-戻り値
-
-voidで完了する{{jsxref("Promise")}}。
-
-例
-
-次のスニペットはAudioContext states デモ(すぐ実行)から取ったものです。stopボタンをクリックすると、close()
が呼ばれます。プロミスに成功すると、リセットされ最初の状態に戻ります。
-
-stopBtn.onclick = function() {
- audioCtx.close().then(function() {
- startBtn.removeAttribute('disabled');
- susresBtn.setAttribute('disabled','disabled');
- stopBtn.setAttribute('disabled','disabled');
- });
-}
-
-
-仕様
-
-
-
-
- Specification |
- Status |
- Comment |
-
-
- {{SpecName('Web Audio API', '#widl-AudioContext-close-Promise-void', 'close()')}} |
- {{Spec2('Web Audio API')}} |
- |
-
-
-
-
-ブラウザ互換性
-
-{{Compat("api.AudioContext.close")}}
-
-参考
-
-
diff --git a/files/ja/web/api/audiocontext/close/index.md b/files/ja/web/api/audiocontext/close/index.md
new file mode 100644
index 00000000000000..e215b66f55b02e
--- /dev/null
+++ b/files/ja/web/api/audiocontext/close/index.md
@@ -0,0 +1,53 @@
+---
+title: AudioContext.close()
+slug: Web/API/AudioContext/close
+translation_of: Web/API/AudioContext/close
+---
+{{ APIRef("Web Audio API") }}
+
+{{ domxref("AudioContext") }}インターフェースの`close()`メソッドは、オーディオコンテキストを閉じて使っていたシステムのオーディオリソースを全て解放します。
+
+閉じたコンテキストは新しいノードを生成できませんが、音声データのデコードやバッファの生成などは可能です。
+
+この関数は、他の参照も同様に解放されない限り、AudioContext が生成したオブジェクトは自動的には解放しません。しかし、これはオーディオリソースを強制的に解放します。よって、オーディオコンテキストの更なる生成と使用はできなくなり、オーディオコンテキストの時間の流れは止まり、音声データの処理は停止します。
+全ての AudioContext-creation-blocking リソースが解放されたとき、返された{{jsxref("Promise")}}が完了します。このメソッドは{{domxref("OfflineAudioContext")}}で呼ばれたとき`INVALID_STATE_ERR`例外が発生します。
+
+## 構文
+
+```js
+var audioCtx = new AudioContext();
+audioCtx.close().then(function() { ... });
+```
+
+### 戻り値
+
+void で完了する{{jsxref("Promise")}}。
+
+## 例
+
+次のスニペットは[AudioContext states デモ](https://github.com/mdn/audiocontext-states/settings)([すぐ実行](http://mdn.github.io/audiocontext-states/))から取ったものです。stop ボタンをクリックすると、`close()`が呼ばれます。プロミスに成功すると、リセットされ最初の状態に戻ります。
+
+```js
+stopBtn.onclick = function() {
+ audioCtx.close().then(function() {
+ startBtn.removeAttribute('disabled');
+ susresBtn.setAttribute('disabled','disabled');
+ stopBtn.setAttribute('disabled','disabled');
+ });
+}
+```
+
+## 仕様
+
+| Specification | Status | Comment |
+| ------------------------------------------------------------------------------------------------------------ | ------------------------------------ | ------- |
+| {{SpecName('Web Audio API', '#widl-AudioContext-close-Promise-void', 'close()')}} | {{Spec2('Web Audio API')}} | |
+
+## ブラウザ互換性
+
+{{Compat("api.AudioContext.close")}}
+
+## 参考
+
+- [Using the Web Audio API](/ja/docs/Web_Audio_API/Using_Web_Audio_API)
+- [Web Audio API](/ja/docs/Web/API/Web_Audio_API)
diff --git a/files/ja/web/api/audiocontext/createmediaelementsource/index.html b/files/ja/web/api/audiocontext/createmediaelementsource/index.html
deleted file mode 100644
index 5326e62701fbe6..00000000000000
--- a/files/ja/web/api/audiocontext/createmediaelementsource/index.html
+++ /dev/null
@@ -1,103 +0,0 @@
----
-title: AudioContext.createMediaElementSource()
-slug: Web/API/AudioContext/createMediaElementSource
-translation_of: Web/API/AudioContext/createMediaElementSource
----
-{{ APIRef("Web Audio API") }}
-
-
-
{{ domxref("AudioContext") }}インターフェースのcreateMediaElementSource()メソッドは、新しく{{ domxref("MediaElementAudioSourceNode") }} オブジェクトを作成するために使用されます。HTML内に存在する{{htmlelement("audio")}} または {{htmlelement("video")}} を指定すると、そのオーディオを再生し、操作することができます。
-
-
media element audio source nodesについての詳細は、 {{ domxref("MediaElementAudioSourceNode") }} を参照して下さい。
-
-
-構文
-
-var audioCtx = new AudioContext();
-var source = audioCtx.createMediaElementSource(myMediaElement);
-
-引数
-
-
- myMediaElement
- - プロセッシング・グラフで操作するための {{ domxref("HTMLMediaElement") }} オブジェクトです。
-
-
-戻り値
-
-{{domxref("MediaElementAudioSourceNode")}}
-
-例
-
-以下の例では、createMediaElementSource()を使用して {{ htmlelement("audio") }} から音源を作成します。 再生される音源は {{ domxref("GainNode") }} を介し {{ domxref("AudioDestinationNode") }} に渡されます。マウスポインタが動くとupdatePage()関数が呼ばれ、マウスポインタのY座標の値をウィンドウの高さで割った比率を元に現在のゲインを計算します。また、マウスポインタを上下に動かすことで、再生している音楽の音量を上げ下げできます。
-
-
-
-var audioCtx = new (window.AudioContext || window.webkitAudioContext)();
-var myAudio = document.querySelector('audio');
-var pre = document.querySelector('pre');
-var myScript = document.querySelector('script');
-
-pre.innerHTML = myScript.innerHTML;
-
-// MediaElementAudioSourceNodeを作成
-// HTMLMediaElementをそこへ接続
-var source = audioCtx.createMediaElementSource(myAudio);
-
-// gain nodeを作成
-var gainNode = audioCtx.createGain();
-
-// マウスポインタのY座標と
-// 画面の高さを保持するための変数を作成
-var CurY;
-var HEIGHT = window.innerHeight;
-
-// マウスが動いたら新しいY座標を取得し、
-// ゲインの値を設定する
-document.onmousemove = updatePage;
-
-function updatePage(e) {
- CurY = (window.Event) ? e.pageY : event.clientY + (document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop);
-
- gainNode.gain.value = CurY/HEIGHT;
-}
-
-
-// AudioBufferSourceNodeをgainNodeへ接続
-// gainNodeをdestinationへ接続
-// これで音楽の再生と、マウスカーソルで音量を調節できるようになる
-source.connect(gainNode);
-gainNode.connect(audioCtx.destination);
-
-
-
注記: createMediaElementSource()を呼んだ結果として {{ domxref("HTMLMediaElement") }} から再生される音声はAudioContextのプロセッシング・グラフへ再度ルーティングされます。従って、createMediaElementSource()を呼んだ後も音声の再生/一時停止はmedia element API及びプレーヤーの再生/一時停止ボタンから操作できます。
-
-
-仕様
-
-
-
-
- 仕様 |
- 状態 |
- コメント |
-
-
- {{SpecName('Web Audio API', '#widl-AudioContext-createMediaElementSource-MediaElementAudioSourceNode-HTMLMediaElement-mediaElement', 'createMediaElementSource()')}} |
- {{Spec2('Web Audio API')}} |
- |
-
-
-
-
-ブラウザの互換性
-
-{{Compat("api.AudioContext.createMediaElementSource")}}
-
-関連情報
-
-
diff --git a/files/ja/web/api/audiocontext/createmediaelementsource/index.md b/files/ja/web/api/audiocontext/createmediaelementsource/index.md
new file mode 100644
index 00000000000000..342b14e342cb23
--- /dev/null
+++ b/files/ja/web/api/audiocontext/createmediaelementsource/index.md
@@ -0,0 +1,86 @@
+---
+title: AudioContext.createMediaElementSource()
+slug: Web/API/AudioContext/createMediaElementSource
+translation_of: Web/API/AudioContext/createMediaElementSource
+---
+{{ APIRef("Web Audio API") }}
+
+{{ domxref("AudioContext") }}インターフェースの createMediaElementSource()メソッドは、新しく{{ domxref("MediaElementAudioSourceNode") }} オブジェクトを作成するために使用されます。HTML 内に存在する{{htmlelement("audio")}} または {{htmlelement("video")}} を指定すると、そのオーディオを再生し、操作することができます。
+
+media element audio source nodes についての詳細は、 {{ domxref("MediaElementAudioSourceNode") }} を参照して下さい。
+
+## 構文
+
+```js
+var audioCtx = new AudioContext();
+var source = audioCtx.createMediaElementSource(myMediaElement);
+```
+
+### 引数
+
+- `myMediaElement`
+ - : プロセッシング・グラフで操作するための {{ domxref("HTMLMediaElement") }} オブジェクトです。
+
+### 戻り値
+
+{{domxref("MediaElementAudioSourceNode")}}
+
+## 例
+
+以下の例では、createMediaElementSource()を使用して {{ htmlelement("audio") }} から音源を作成します。 再生される音源は {{ domxref("GainNode") }} を介し {{ domxref("AudioDestinationNode") }} に渡されます。マウスポインタが動くと updatePage()関数が呼ばれ、マウスポインタの Y 座標の値をウィンドウの高さで割った比率を元に現在のゲインを計算します。また、マウスポインタを上下に動かすことで、再生している音楽の音量を上げ下げできます。
+
+> **Note:** **注記**: [この例のデモ](http://mdn.github.io/media-source-buffer/)と、[ソース](https://github.com/mdn/media-source-buffer)を見ることができます。
+
+```js
+var audioCtx = new (window.AudioContext || window.webkitAudioContext)();
+var myAudio = document.querySelector('audio');
+var pre = document.querySelector('pre');
+var myScript = document.querySelector('script');
+
+pre.innerHTML = myScript.innerHTML;
+
+// MediaElementAudioSourceNodeを作成
+// HTMLMediaElementをそこへ接続
+var source = audioCtx.createMediaElementSource(myAudio);
+
+// gain nodeを作成
+var gainNode = audioCtx.createGain();
+
+// マウスポインタのY座標と
+// 画面の高さを保持するための変数を作成
+var CurY;
+var HEIGHT = window.innerHeight;
+
+// マウスが動いたら新しいY座標を取得し、
+// ゲインの値を設定する
+document.onmousemove = updatePage;
+
+function updatePage(e) {
+ CurY = (window.Event) ? e.pageY : event.clientY + (document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop);
+
+ gainNode.gain.value = CurY/HEIGHT;
+}
+
+
+// AudioBufferSourceNodeをgainNodeへ接続
+// gainNodeをdestinationへ接続
+// これで音楽の再生と、マウスカーソルで音量を調節できるようになる
+source.connect(gainNode);
+gainNode.connect(audioCtx.destination);
+```
+
+> **Note:** **注記**: createMediaElementSource()を呼んだ結果として {{ domxref("HTMLMediaElement") }} から再生される音声は AudioContext のプロセッシング・グラフへ再度ルーティングされます。従って、*createMediaElementSource()を呼んだ後も*音声の再生/一時停止は media element API 及びプレーヤーの再生/一時停止ボタンから操作できます。
+
+## 仕様
+
+| 仕様 | 状態 | コメント |
+| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------ | -------- |
+| {{SpecName('Web Audio API', '#widl-AudioContext-createMediaElementSource-MediaElementAudioSourceNode-HTMLMediaElement-mediaElement', 'createMediaElementSource()')}} | {{Spec2('Web Audio API')}} | |
+
+## ブラウザの互換性
+
+{{Compat("api.AudioContext.createMediaElementSource")}}
+
+## 関連情報
+
+- [Web Audio API の利用](/ja/docs/Web_Audio_API/Using_Web_Audio_API)
diff --git a/files/ja/web/api/audiocontext/resume/index.html b/files/ja/web/api/audiocontext/resume/index.html
deleted file mode 100644
index dfaf07724b4fd4..00000000000000
--- a/files/ja/web/api/audiocontext/resume/index.html
+++ /dev/null
@@ -1,74 +0,0 @@
----
-title: AudioContext.resume()
-slug: Web/API/AudioContext/resume
-translation_of: Web/API/AudioContext/resume
----
-{{ APIRef("Web Audio API") }}
-
-{{ domxref("AudioContext") }}インターフェースのresume()
メソッドは、一時停止されたオーディオコンテキストの時間の流れを再開します。
-
-{{domxref("OfflineAudioContext")}}でこのメソッドを呼ぶとINVALID_STATE_ERR
例外が発生します。
-
-構文
-
-Promise<> baseAudioContext.resume();
-
-
-引数
-
-なし
-
-戻り値
-
-voidで完了する{{jsxref("Promise")}}。コンテキストが既に閉じている場合、プロミスは失敗します。
-
-例
-
-次のスニペットはAudioContext states デモ(すぐ実行)から取ったものです。suspend/resumeボタンをクリックすると、{{domxref("AudioContext.state")}}を問い合わせます—もしrunning
ならば、{{domxref("suspend()")}}が呼ばれます。suspended
ならば、resume()
が呼ばれます。両方ともプロミスに成功するとボタンのラベルが適したものに更新されます。
-
-susresBtn.onclick = function() {
- if(audioCtx.state === 'running') {
- audioCtx.suspend().then(function() {
- susresBtn.textContent = 'Resume context';
- });
- } else if(audioCtx.state === 'suspended') {
- audioCtx.resume().then(function() {
- susresBtn.textContent = 'Suspend context';
- });
- }
-}
-
-
-仕様
-
-
-
-
- Specification |
- Status |
- Comment |
-
-
- {{SpecName('Web Audio API', '#dom-baseaudiocontext-resume', 'resume()')}} |
- {{Spec2('Web Audio API')}} |
- |
-
-
-
-
-ブラウザ互換性
-
-
-
-
-
-
{{Compat("api.BaseAudioContext.resume")}}
-
-
-
-参考
-
-
diff --git a/files/ja/web/api/audiocontext/resume/index.md b/files/ja/web/api/audiocontext/resume/index.md
new file mode 100644
index 00000000000000..33950a2fc5bb28
--- /dev/null
+++ b/files/ja/web/api/audiocontext/resume/index.md
@@ -0,0 +1,57 @@
+---
+title: AudioContext.resume()
+slug: Web/API/AudioContext/resume
+translation_of: Web/API/AudioContext/resume
+---
+{{ APIRef("Web Audio API") }}
+
+{{ domxref("AudioContext") }}インターフェースの`resume()`メソッドは、一時停止されたオーディオコンテキストの時間の流れを再開します。
+
+{{domxref("OfflineAudioContext")}}でこのメソッドを呼ぶと`INVALID_STATE_ERR`例外が発生します。
+
+## 構文
+
+```js
+Promise<> baseAudioContext.resume();
+```
+
+### 引数
+
+なし
+
+### 戻り値
+
+void で完了する{{jsxref("Promise")}}。コンテキストが既に閉じている場合、プロミスは失敗します。
+
+## 例
+
+次のスニペットは[AudioContext states デモ](https://github.com/mdn/audiocontext-states/settings)([すぐ実行](http://mdn.github.io/audiocontext-states/))から取ったものです。suspend/resume ボタンをクリックすると、{{domxref("AudioContext.state")}}を問い合わせます—もし`running`ならば、{{domxref("suspend()")}}が呼ばれます。`suspended`ならば、`resume()`が呼ばれます。両方ともプロミスに成功するとボタンのラベルが適したものに更新されます。
+
+```js
+susresBtn.onclick = function() {
+ if(audioCtx.state === 'running') {
+ audioCtx.suspend().then(function() {
+ susresBtn.textContent = 'Resume context';
+ });
+ } else if(audioCtx.state === 'suspended') {
+ audioCtx.resume().then(function() {
+ susresBtn.textContent = 'Suspend context';
+ });
+ }
+}
+```
+
+## 仕様
+
+| Specification | Status | Comment |
+| ------------------------------------------------------------------------------------------------ | ------------------------------------ | ------- |
+| {{SpecName('Web Audio API', '#dom-baseaudiocontext-resume', 'resume()')}} | {{Spec2('Web Audio API')}} | |
+
+## ブラウザ互換性
+
+{{Compat("api.BaseAudioContext.resume")}}
+
+## 参考
+
+- [Using the Web Audio API](/ja/docs/Web_Audio_API/Using_Web_Audio_API)
+- [Web Audio API](/ja/docs/Web/API/Web_Audio_API)
diff --git a/files/ja/web/api/audiocontext/suspend/index.html b/files/ja/web/api/audiocontext/suspend/index.html
deleted file mode 100644
index b81d898830e803..00000000000000
--- a/files/ja/web/api/audiocontext/suspend/index.html
+++ /dev/null
@@ -1,69 +0,0 @@
----
-title: AudioContext.suspend()
-slug: Web/API/AudioContext/suspend
-translation_of: Web/API/AudioContext/suspend
----
-{{ APIRef("Web Audio API") }}
-
-suspend()
メソッドは、オーディオコンテキストの時間の流れを一時停止します。音声ハードウェアへのアクセスを一時的に停止し、処理に必要だったCPU/バッテリーの使用を減らすことが出来ます。これは、アプリケーションがしばらくの間オーディオを扱わない間に、音声ハードウェアに電源を供給しないようにしたいときに便利です。
-
-{{domxref("OfflineAudioContext")}}でこのメソッドを呼ぶとINVALID_STATE_ERR
例外が発生します。
-
-構文
-
-var audioCtx = new AudioContext();
-audioCtx.suspend().then(function() { ... });
-
-
-戻り値
-
-voidで完了する{{jsxref("Promise")}}。コンテキストが既に閉じている場合、プロミスは失敗します。
-
-例
-
-次のスニペットはAudioContext states デモ(すぐ実行)から取ったものです。suspend/resumeボタンをクリックすると、{{domxref("AudioContext.state")}}を問い合わせます—もしrunning
ならば、suspend()
が呼ばれます。suspended
ならば、{{domxref("resume")}}が呼ばれます。両方ともプロミスに成功するとボタンのラベルが適したものに更新されます。
-
-susresBtn.onclick = function() {
- if(audioCtx.state === 'running') {
- audioCtx.suspend().then(function() {
- susresBtn.textContent = 'Resume context';
- });
- } else if(audioCtx.state === 'suspended') {
- audioCtx.resume().then(function() {
- susresBtn.textContent = 'Suspend context';
- });
- }
-}
-
-
-仕様
-
-
-
-
- Specification |
- Status |
- Comment |
-
-
- {{SpecName('Web Audio API', '#widl-AudioContext-suspend-Promise-void', 'close()')}} |
- {{Spec2('Web Audio API')}} |
- |
-
-
-
-
-ブラウザ互換性
-
-
-
-
-
{{Compat("api.AudioContext.suspend")}}
-
-
-参考
-
-
diff --git a/files/ja/web/api/audiocontext/suspend/index.md b/files/ja/web/api/audiocontext/suspend/index.md
new file mode 100644
index 00000000000000..77761dc1311b71
--- /dev/null
+++ b/files/ja/web/api/audiocontext/suspend/index.md
@@ -0,0 +1,54 @@
+---
+title: AudioContext.suspend()
+slug: Web/API/AudioContext/suspend
+translation_of: Web/API/AudioContext/suspend
+---
+{{ APIRef("Web Audio API") }}
+
+`suspend()`メソッドは、オーディオコンテキストの時間の流れを一時停止します。音声ハードウェアへのアクセスを一時的に停止し、処理に必要だった CPU/バッテリーの使用を減らすことが出来ます。これは、アプリケーションがしばらくの間オーディオを扱わない間に、音声ハードウェアに電源を供給しないようにしたいときに便利です。
+
+{{domxref("OfflineAudioContext")}}でこのメソッドを呼ぶと`INVALID_STATE_ERR`例外が発生します。
+
+## 構文
+
+```js
+var audioCtx = new AudioContext();
+audioCtx.suspend().then(function() { ... });
+```
+
+### 戻り値
+
+void で完了する{{jsxref("Promise")}}。コンテキストが既に閉じている場合、プロミスは失敗します。
+
+## 例
+
+次のスニペットは[AudioContext states デモ](https://github.com/mdn/audiocontext-states/settings)([すぐ実行](http://mdn.github.io/audiocontext-states/))から取ったものです。suspend/resume ボタンをクリックすると、{{domxref("AudioContext.state")}}を問い合わせます—もし`running`ならば、`suspend()`が呼ばれます。`suspended`ならば、{{domxref("resume")}}が呼ばれます。両方ともプロミスに成功するとボタンのラベルが適したものに更新されます。
+
+```js
+susresBtn.onclick = function() {
+ if(audioCtx.state === 'running') {
+ audioCtx.suspend().then(function() {
+ susresBtn.textContent = 'Resume context';
+ });
+ } else if(audioCtx.state === 'suspended') {
+ audioCtx.resume().then(function() {
+ susresBtn.textContent = 'Suspend context';
+ });
+ }
+}
+```
+
+## 仕様
+
+| Specification | Status | Comment |
+| ---------------------------------------------------------------------------------------------------------------- | ------------------------------------ | ------- |
+| {{SpecName('Web Audio API', '#widl-AudioContext-suspend-Promise-void', 'close()')}} | {{Spec2('Web Audio API')}} | |
+
+## ブラウザ互換性
+
+{{Compat("api.AudioContext.suspend")}}
+
+## 参考
+
+- [Using the Web Audio API](/ja/docs/Web_Audio_API/Using_Web_Audio_API)
+- [Web Audio API](/ja/docs/Web/API/Web_Audio_API)
diff --git a/files/ja/web/api/audiodestinationnode/index.html b/files/ja/web/api/audiodestinationnode/index.html
deleted file mode 100644
index ba508b4ea497b0..00000000000000
--- a/files/ja/web/api/audiodestinationnode/index.html
+++ /dev/null
@@ -1,90 +0,0 @@
----
-title: AudioDestinationNode
-slug: Web/API/AudioDestinationNode
-translation_of: Web/API/AudioDestinationNode
----
-{{APIRef("Web Audio API")}}
-
-
-
AudioDestinationNode
インターフェースは、指定のコンテキストの音声の最後の目的地 - 通常はあなたのデバイスのスピーカーを表します。OfflineAudioContext
と共に使えば、オーディオデータを「録音」するノードにもできます。
-
-
-AudioDestinationNode
には出力はなく(出力があれば、これ以上AudioNodeに音声を結びつけることができません)、入力が1つあります。入力チャンネルの数は、0からmaxChannelCount
変数の間である必要があり、そうでなければ例外が発生します。
-
-指定のAudioContext
のAudioDestinationNode
は{{domxref("AudioContext.destination")}}プロパティで取得できます。
-
-
-
-
- Number of inputs |
- 1 |
-
-
- Number of outputs |
- 0 |
-
-
- Channel count mode |
- "explicit" |
-
-
- Channel count |
- 2 |
-
-
- Channel interpretation |
- "speakers" |
-
-
-
-
-プロパティ
-
-親の{{domxref("AudioNode")}}のプロパティを継承しています。
-
-
- - {{domxref("AudioDestinationNode.maxChannelCount")}}
- unsigned long
で表された物理的なデバイスが扱えるチャンネルの最大数
-
-
-メソッド
-
-固有のメソッドはありません。親の{{domxref("AudioNode")}}のメソッドを継承しています。
-
-例
-
-AudioDestinationNode
の設定には複雑なことはありません - デフォルトでユーザのシステム(例:スピーカー)を表しています。よって、数行のコードを書くだけで内部の音声を接続することができます:
-
-var audioCtx = new AudioContext();
-var source = audioCtx.createMediaElementSource(myMediaElement);
-source.connect(gainNode);
-gainNode.connect(audioCtx.destination);
-
-完全な実装は、MDN Web AudioのVoice-change-o-maticやViolent Thereminのようなサンプルを参考にしてください。
-
-仕様
-
-
-
-
- Specification |
- Status |
- Comment |
-
-
- {{SpecName('Web Audio API', '#the-audiodestinationnode-interface', 'AudioDestinationNode')}} |
- {{Spec2('Web Audio API')}} |
- |
-
-
-
-
-ブラウザ互換性
-
-{{Compat("api.AudioDestinationNode")}}
-
-参考
-
-
diff --git a/files/ja/web/api/audiodestinationnode/index.md b/files/ja/web/api/audiodestinationnode/index.md
new file mode 100644
index 00000000000000..3e1298b3db4052
--- /dev/null
+++ b/files/ja/web/api/audiodestinationnode/index.md
@@ -0,0 +1,57 @@
+---
+title: AudioDestinationNode
+slug: Web/API/AudioDestinationNode
+translation_of: Web/API/AudioDestinationNode
+---
+{{APIRef("Web Audio API")}}
+
+`AudioDestinationNode`インターフェースは、指定のコンテキストの音声の最後の目的地 - 通常はあなたのデバイスのスピーカーを表します。`OfflineAudioContext`と共に使えば、オーディオデータを「録音」するノードにもできます。
+
+`AudioDestinationNode`には出力はなく(出力が**あれば**、これ以上 AudioNode に音声を結びつけることができません)、入力が 1 つあります。入力チャンネルの数は、0 から`maxChannelCount`変数の間である必要があり、そうでなければ例外が発生します。
+
+指定の`AudioContext`の`AudioDestinationNode`は{{domxref("AudioContext.destination")}}プロパティで取得できます。
+
+| Number of inputs | `1` |
+| ---------------------- | ------------ |
+| Number of outputs | `0` |
+| Channel count mode | `"explicit"` |
+| Channel count | `2` |
+| Channel interpretation | `"speakers"` |
+
+## プロパティ
+
+_親の{{domxref("AudioNode")}}のプロパティを継承しています。_
+
+- {{domxref("AudioDestinationNode.maxChannelCount")}}
+ - : `unsigned long`で表された物理的なデバイスが扱えるチャンネルの最大数
+
+## メソッド
+
+*固有のメソッドはありません。親の\_\_{{domxref("AudioNode")}}*のメソッドを継承しています。
+
+## 例
+
+`AudioDestinationNode`の設定には複雑なことはありません - デフォルトでユーザのシステム(例:スピーカー)を表しています。よって、数行のコードを書くだけで内部の音声を接続することができます:
+
+```js
+var audioCtx = new AudioContext();
+var source = audioCtx.createMediaElementSource(myMediaElement);
+source.connect(gainNode);
+gainNode.connect(audioCtx.destination);
+```
+
+完全な実装は、MDN Web Audio の[Voice-change-o-matic](http://mdn.github.io/voice-change-o-matic/)や[Violent Theremin](http://mdn.github.io/violent-theremin/)のようなサンプルを参考にしてください。
+
+## 仕様
+
+| Specification | Status | Comment |
+| ---------------------------------------------------------------------------------------------------------------------------- | ------------------------------------ | ------- |
+| {{SpecName('Web Audio API', '#the-audiodestinationnode-interface', 'AudioDestinationNode')}} | {{Spec2('Web Audio API')}} | |
+
+## ブラウザ互換性
+
+{{Compat("api.AudioDestinationNode")}}
+
+## 参考
+
+- [Using the Web Audio API](/ja/docs/Web/API/Web_Audio_API/Using_Web_Audio_API)
diff --git a/files/ja/web/api/audiodestinationnode/maxchannelcount/index.html b/files/ja/web/api/audiodestinationnode/maxchannelcount/index.html
deleted file mode 100644
index 495d41038b8117..00000000000000
--- a/files/ja/web/api/audiodestinationnode/maxchannelcount/index.html
+++ /dev/null
@@ -1,62 +0,0 @@
----
-title: AudioDestinationNode.maxChannelCount
-slug: Web/API/AudioDestinationNode/maxChannelCount
-translation_of: Web/API/AudioDestinationNode/maxChannelCount
----
-{{ APIRef("Web Audio API") }}
-
-
-
{{ domxref("AudioDestinationNode") }}インターフェースのmaxchannelCount
プロパティは、unsigned long
で表された物理的なデバイスが扱えるチャンネルの最大数です。
-
-
{{domxref("AudioNode.channelCount")}}プロパティは0からこの値の間(両端を含む)です。もし{{domxref("OfflineAudioContext")}}のようにmaxChannelCount
が0ならば、チャンネルの数は変えられません。
-
-
-構文
-
-var audioCtx = new AudioContext();
-var myDestination = audioCtx.destination;
-myDestination.maxChannelCount = 2;
-
-
-値
-
-unsigned long
-
-例
-
-次の例は単純な設定です。AudioDestinationNode
のmaxChannelCount
を2にしています。
-
-var audioCtx = new AudioContext();
-var source = audioCtx.createMediaElementSource(myMediaElement);
-source.connect(gainNode);
-audioCtx.destination.maxChannelCount = 2;
-gainNode.connect(audioCtx.destination);
-
-完全な実装は、MDN Web AudioのVoice-change-o-maticやViolent Thereminのようなサンプルを参考にしてください。
-
-使用
-
-
-
-
- Specification |
- Status |
- Comment |
-
-
- {{SpecName('Web Audio API', '#widl-AudioDestinationNode-maxChannelCount', 'maxChannelCount')}} |
- {{Spec2('Web Audio API')}} |
- |
-
-
-
-
-ブラウザ互換性
-
-{{Compat("api.AudioDestinationNode.maxChannelCount")}}
-
-参考
-
-
diff --git a/files/ja/web/api/audiodestinationnode/maxchannelcount/index.md b/files/ja/web/api/audiodestinationnode/maxchannelcount/index.md
new file mode 100644
index 00000000000000..ac0135de1dbb54
--- /dev/null
+++ b/files/ja/web/api/audiodestinationnode/maxchannelcount/index.md
@@ -0,0 +1,50 @@
+---
+title: AudioDestinationNode.maxChannelCount
+slug: Web/API/AudioDestinationNode/maxChannelCount
+translation_of: Web/API/AudioDestinationNode/maxChannelCount
+---
+{{ APIRef("Web Audio API") }}
+
+{{ domxref("AudioDestinationNode") }}インターフェースの`maxchannelCount`プロパティは、`unsigned long`で表された物理的なデバイスが扱えるチャンネルの最大数です。
+
+{{domxref("AudioNode.channelCount")}}プロパティは 0 からこの値の間(両端を含む)です。もし{{domxref("OfflineAudioContext")}}のように`maxChannelCount`が 0 ならば、チャンネルの数は変えられません。
+
+## 構文
+
+```js
+var audioCtx = new AudioContext();
+var myDestination = audioCtx.destination;
+myDestination.maxChannelCount = 2;
+```
+
+### 値
+
+`unsigned long`
+
+## 例
+
+次の例は単純な設定です。`AudioDestinationNode`の`maxChannelCount`を 2 にしています。
+
+```js
+var audioCtx = new AudioContext();
+var source = audioCtx.createMediaElementSource(myMediaElement);
+source.connect(gainNode);
+audioCtx.destination.maxChannelCount = 2;
+gainNode.connect(audioCtx.destination);
+```
+
+完全な実装は、MDN Web Audio の[Voice-change-o-matic](http://mdn.github.io/voice-change-o-matic/)や[Violent Theremin](http://mdn.github.io/violent-theremin/)のようなサンプルを参考にしてください。
+
+## 使用
+
+| Specification | Status | Comment |
+| ---------------------------------------------------------------------------------------------------------------------------- | ------------------------------------ | ------- |
+| {{SpecName('Web Audio API', '#widl-AudioDestinationNode-maxChannelCount', 'maxChannelCount')}} | {{Spec2('Web Audio API')}} | |
+
+## ブラウザ互換性
+
+{{Compat("api.AudioDestinationNode.maxChannelCount")}}
+
+## 参考
+
+- [Using the Web Audio API](/ja/docs/Web_Audio_API/Using_Web_Audio_API)
diff --git a/files/ja/web/api/audioscheduledsourcenode/index.html b/files/ja/web/api/audioscheduledsourcenode/index.html
deleted file mode 100644
index ef71552b5654b6..00000000000000
--- a/files/ja/web/api/audioscheduledsourcenode/index.html
+++ /dev/null
@@ -1,77 +0,0 @@
----
-title: AudioScheduledSourceNode
-slug: Web/API/AudioScheduledSourceNode
-tags:
- - API
- - Audio
- - AudioScheduledSourceNode
- - Interface
- - Media
- - Reference
- - Web Audio API
- - sound
- - インターフェイス
-translation_of: Web/API/AudioScheduledSourceNode
----
-{{APIRef("Web Audio API")}}
-
-AudioScheduledSourceNode インターフェース (Web Audio APIの一部分) は、オーディオソースノード各種の親インターフェースであり、必要に応じ、指定された時間で開始や停止を行う機能を持ちます。具体的には、このインタフェースでは、{{domxref("AudioScheduledSourceNode.start", "start()")}} や、{{domxref("AudioScheduledSourceNode.stop", "stop()")}} メソッドの他、{{domxref("AudioScheduledSourceNode.onended", "onended")}} イベントハンドラーを定義しています。
-
-
-
-
-
AudioScheduledSourceNode オブジェクトは、直接作成することはできません。
- かわりに、{{domxref("AudioBufferSourceNode")}} や、{{domxref("OscillatorNode")}}、または {{domxref("ConstantSourceNode")}} を使用してください。
-
-
-特に明記しない限り、AudioScheduledSourceNode をベースにしたノードは、再生されていない時 (つまり、start() の前や、stop() の後) は、無音を出力します。無音は、値がゼロ (0) であるサンプルストリームを、常に流し続けることで表現されています。
-
-プロパティ
-
-親インターフェース、{{domxref("AudioNode")}} のプロパティ継承に加え、以下のプロパティがあります。
-
-イベントハンドラ
-
-
- - {{domxref("AudioScheduledSourceNode.onended", "onended")}}
- - {{event("ended")}} イベントが発生したときに呼び出されるメソッドです。ノードが再生を終えたことを示します。
-
-
-メソッド
-
-親インターフェース、{{domxref("AudioNode")}} のメソッド継承に加え、以下のメソッドがあります。
-
-
- - {{domxref("AudioScheduledSourceNode.start", "start()")}}
- - 指定した時刻に、ノードが特定の音を再生するよう、スケジュールします。時間を指定しない場合、ノードはすぐに再生を開始します。
- - {{domxref("AudioScheduledSourceNode.stop", "stop()")}}
- - 指定した時刻に、ノードの再生を停止するよう、スケジュールします。時間を指定しない場合、ノードはすぐに停止します。
-
-
-Specification
-
-
-
-
- Specification |
- Status |
- Comment |
-
-
- {{SpecName('Web Audio API', '#idl-def-AudioScheduledSourceNode', 'AudioScheduledSourceNode')}} |
- {{Spec2('Web Audio API')}} |
- |
-
-
-
-
-Browser compatibility
-
-{{Compat("api.AudioScheduledSourceNode")}}
-
-See also
-
-
diff --git a/files/ja/web/api/audioscheduledsourcenode/index.md b/files/ja/web/api/audioscheduledsourcenode/index.md
new file mode 100644
index 00000000000000..5cc38123001256
--- /dev/null
+++ b/files/ja/web/api/audioscheduledsourcenode/index.md
@@ -0,0 +1,54 @@
+---
+title: AudioScheduledSourceNode
+slug: Web/API/AudioScheduledSourceNode
+tags:
+ - API
+ - Audio
+ - AudioScheduledSourceNode
+ - Interface
+ - Media
+ - Reference
+ - Web Audio API
+ - sound
+ - インターフェイス
+translation_of: Web/API/AudioScheduledSourceNode
+---
+{{APIRef("Web Audio API")}}AudioScheduledSourceNode インターフェース (Web Audio API の一部分) は、オーディオソースノード各種の親インターフェースであり、必要に応じ、指定された時間で開始や停止を行う機能を持ちます。具体的には、このインタフェースでは、{{domxref("AudioScheduledSourceNode.start", "start()")}} や、{{domxref("AudioScheduledSourceNode.stop", "stop()")}} メソッドの他、{{domxref("AudioScheduledSourceNode.onended", "onended")}} イベントハンドラーを定義しています。
+
+> **Note:** AudioScheduledSourceNode オブジェクトは、直接作成することはできません。
+> かわりに、{{domxref("AudioBufferSourceNode")}} や、{{domxref("OscillatorNode")}}、または {{domxref("ConstantSourceNode")}} を使用してください。
+
+特に明記しない限り、AudioScheduledSourceNode をベースにしたノードは、再生されていない時 (つまり、start() の前や、stop() の後) は、無音を出力します。無音は、値がゼロ (0) であるサンプルストリームを、常に流し続けることで表現されています。
+
+## プロパティ
+
+親インターフェース、_{{domxref("AudioNode")}}_ のプロパティ継承に加え、以下のプロパティがあります。
+
+### イベントハンドラ
+
+- {{domxref("AudioScheduledSourceNode.onended", "onended")}}
+ - : {{event("ended")}} イベントが発生したときに呼び出されるメソッドです。ノードが再生を終えたことを示します。
+
+## メソッド
+
+親インターフェース、_{{domxref("AudioNode")}}_ のメソッド継承に加え、以下のメソッドがあります。
+
+- {{domxref("AudioScheduledSourceNode.start", "start()")}}
+ - : 指定した時刻に、ノードが特定の音を再生するよう、スケジュールします。時間を指定しない場合、ノードはすぐに再生を開始します。
+- {{domxref("AudioScheduledSourceNode.stop", "stop()")}}
+ - : 指定した時刻に、ノードの再生を停止するよう、スケジュールします。時間を指定しない場合、ノードはすぐに停止します。
+
+## Specification
+
+| Specification | Status | Comment |
+| ---------------------------------------------------------------------------------------------------------------------------- | ------------------------------------ | ------- |
+| {{SpecName('Web Audio API', '#idl-def-AudioScheduledSourceNode', 'AudioScheduledSourceNode')}} | {{Spec2('Web Audio API')}} | |
+
+## Browser compatibility
+
+{{Compat("api.AudioScheduledSourceNode")}}
+
+## See also
+
+- [Using the Web Audio API](/ja/docs/Web/API/Web_Audio_API/Using_Web_Audio_API)
+- {{domxref("AudioNode")}}
diff --git a/files/ja/web/api/audiotracklist/addtrack_event/index.html b/files/ja/web/api/audiotracklist/addtrack_event/index.html
deleted file mode 100644
index 311fff9781e8d1..00000000000000
--- a/files/ja/web/api/audiotracklist/addtrack_event/index.html
+++ /dev/null
@@ -1,83 +0,0 @@
----
-title: 'AudioTrackList: addtrack イベント'
-slug: Web/API/AudioTrackList/addtrack_event
-tags:
- - AudioTrackList
- - Event
- - addTrack
- - events
-translation_of: Web/API/AudioTrackList/addtrack_event
----
-{{APIRef}}
-
-addtrack
イベントは、トラックが {{domxref("AudioTrackList")}} に追加されたときに発生します。
-
-
-
-
- バブリング |
- なし |
-
-
- キャンセル |
- 不可 |
-
-
- インターフェイス |
- {{domxref("TrackEvent")}} |
-
-
- イベントハンドラプロパティ |
- onaddtrack |
-
-
-
-
-例
-
-AddEventListener()
を使用する場合
-
-const videoElement = document.querySelector('video');
-
-videoElement.audioTracks.addEventListener('addtrack', (event) => {
- console.log(`Audio track: ${event.track.label} added`);
-});
-
-onaddtrack
イベントハンドラプロパティを使用する場合
-
-const videoElement = document.querySelector('video');
-
-videoElement.audioTracks.onaddtrack = (event) => {
- console.log(`Audio track: ${event.track.label} added`);
-};
-
-仕様
-
-
-
-
- 仕様 |
- 状態 |
-
-
- {{SpecName('HTML WHATWG', 'media.html#event-media-addtrack', 'addtrack')}} |
- {{Spec2('HTML WHATWG')}} |
-
-
-
-
-ブラウザーの互換性
-
-
-
-{{Compat("api.AudioTrackList.addtrack_event")}}
-
-関連情報
-
-
diff --git a/files/ja/web/api/audiotracklist/addtrack_event/index.md b/files/ja/web/api/audiotracklist/addtrack_event/index.md
new file mode 100644
index 00000000000000..a514ccc4d04770
--- /dev/null
+++ b/files/ja/web/api/audiotracklist/addtrack_event/index.md
@@ -0,0 +1,59 @@
+---
+title: 'AudioTrackList: addtrack イベント'
+slug: Web/API/AudioTrackList/addtrack_event
+tags:
+ - AudioTrackList
+ - Event
+ - addTrack
+ - events
+translation_of: Web/API/AudioTrackList/addtrack_event
+---
+{{APIRef}}
+
+`addtrack` イベントは、トラックが {{domxref("AudioTrackList")}} に追加されたときに発生します。
+
+| バブリング | なし |
+| -------------------------- | ---------------------------------------------------------- |
+| キャンセル | 不可 |
+| インターフェイス | {{domxref("TrackEvent")}} |
+| イベントハンドラプロパティ | [`onaddtrack`](/ja/docs/Web/API/AudioTrackList/onaddtrack) |
+
+## 例
+
+`AddEventListener()` を使用する場合
+
+```js
+const videoElement = document.querySelector('video');
+
+videoElement.audioTracks.addEventListener('addtrack', (event) => {
+ console.log(`Audio track: ${event.track.label} added`);
+});
+```
+
+`onaddtrack` イベントハンドラプロパティを使用する場合
+
+```js
+const videoElement = document.querySelector('video');
+
+videoElement.audioTracks.onaddtrack = (event) => {
+ console.log(`Audio track: ${event.track.label} added`);
+};
+```
+
+## 仕様
+
+| 仕様 | 状態 |
+| ---------------------------------------------------------------------------------------------------- | -------------------------------- |
+| {{SpecName('HTML WHATWG', 'media.html#event-media-addtrack', 'addtrack')}} | {{Spec2('HTML WHATWG')}} |
+
+## ブラウザーの互換性
+
+{{Compat("api.AudioTrackList.addtrack_event")}}
+
+## 関連情報
+
+- 関連イベント: [`removetrack`](/ja/docs/Web/API/AudioTrackList/removetrack_event), [`change`](/ja/docs/Web/API/AudioTrackList/change_event)
+- [`VideoTrackList`](/ja/docs/Web/API/VideoTrackList) 対象でのこのイベント: [`addtrack`](/ja/docs/Web/API/VideoTrackList/addtrack_event)
+- [`MediaStream`](/ja/docs/Web/API/MediaStream) 対象でのこのイベント: [`addtrack`](/ja/docs/Web/API/MediaStream/addtrack_event)
+- [Media Streams API](/ja/docs/Web/API/Media_Streams_API)
+- [WebRTC API](/ja/docs/Web/API/WebRTC_API)
diff --git a/files/ja/web/api/audiotracklist/change_event/index.html b/files/ja/web/api/audiotracklist/change_event/index.html
deleted file mode 100644
index cea87015a00ace..00000000000000
--- a/files/ja/web/api/audiotracklist/change_event/index.html
+++ /dev/null
@@ -1,96 +0,0 @@
----
-title: 'AudioTrackList: change イベント'
-slug: Web/API/AudioTrackList/change_event
-tags:
- - API
- - AudioTrackList
- - Change
- - Event
- - HTML API
-translation_of: Web/API/AudioTrackList/change_event
----
-{{APIRef}}
-
-change
イベントは、音声トラックが有効または無効になったとき(トラックの enabled
プロパティを変更したときなど)に発生します。
-
-
-
-
- バブリング |
- なし |
-
-
- キャンセル |
- 不可 |
-
-
- インターフェイス |
- {{domxref("Event")}} |
-
-
- イベントハンドラプロパティ |
- {{domxref("AudioTrackList/onchange", "onchange")}} |
-
-
-
-
-例
-
-addEventListener()
を使用する場合
-
-const videoElement = document.querySelector('video');
-videoElement.audioTracks.addEventListener('change', (event) => {
- console.log(`'${event.type}' イベント発生`);
-});
-
-// `enabled` の値を変更すると `change` イベントを引き起こします
-const toggleTrackButton = document.querySelector('.toggle-track');
-toggleTrackButton.addEventListener('click', () => {
- const track = videoElement.audioTracks[0];
- track.enabled = !track.enabled;
-});
-
-
-onchange
イベントハンドラプロパティを使用する場合
-
-const videoElement = document.querySelector('video');
-videoElement.audioTracks.onchange = (event) => {
- console.log(`'${event.type}' イベント発生`);
-};
-
-// `enabled` の値を変更すると `change` イベントを引き起こします
-const toggleTrackButton = document.querySelector('.toggle-track');
-toggleTrackButton.addEventListener('click', () => {
- const track = videoElement.audioTracks[0];
- track.enabled = !track.enabled;
-});
-
-仕様書
-
-
-
-
- 仕様書 |
- 状態 |
-
-
-
-
- {{SpecName('HTML WHATWG', 'media.html#event-media-change', 'change')}} |
- {{Spec2('HTML WHATWG')}} |
-
-
-
-
-ブラウザーの互換性
-
-{{Compat("api.AudioTrackList.change_event")}}
-
-関連情報
-
-
diff --git a/files/ja/web/api/audiotracklist/change_event/index.md b/files/ja/web/api/audiotracklist/change_event/index.md
new file mode 100644
index 00000000000000..440ee39d2f65e5
--- /dev/null
+++ b/files/ja/web/api/audiotracklist/change_event/index.md
@@ -0,0 +1,71 @@
+---
+title: 'AudioTrackList: change イベント'
+slug: Web/API/AudioTrackList/change_event
+tags:
+ - API
+ - AudioTrackList
+ - Change
+ - Event
+ - HTML API
+translation_of: Web/API/AudioTrackList/change_event
+---
+{{APIRef}}
+
+`change` イベントは、音声トラックが有効または無効になったとき(トラックの [`enabled`](/ja/docs/Web/API/AudioTrack/enabled) プロパティを変更したときなど)に発生します。
+
+| バブリング | なし |
+| -------------------------- | -------------------------------------------------------------------- |
+| キャンセル | 不可 |
+| インターフェイス | {{domxref("Event")}} |
+| イベントハンドラプロパティ | {{domxref("AudioTrackList/onchange", "onchange")}} |
+
+## 例
+
+`addEventListener()` を使用する場合
+
+```js
+const videoElement = document.querySelector('video');
+videoElement.audioTracks.addEventListener('change', (event) => {
+ console.log(`'${event.type}' イベント発生`);
+});
+
+// `enabled` の値を変更すると `change` イベントを引き起こします
+const toggleTrackButton = document.querySelector('.toggle-track');
+toggleTrackButton.addEventListener('click', () => {
+ const track = videoElement.audioTracks[0];
+ track.enabled = !track.enabled;
+});
+```
+
+`onchange` イベントハンドラプロパティを使用する場合
+
+```js
+const videoElement = document.querySelector('video');
+videoElement.audioTracks.onchange = (event) => {
+ console.log(`'${event.type}' イベント発生`);
+};
+
+// `enabled` の値を変更すると `change` イベントを引き起こします
+const toggleTrackButton = document.querySelector('.toggle-track');
+toggleTrackButton.addEventListener('click', () => {
+ const track = videoElement.audioTracks[0];
+ track.enabled = !track.enabled;
+});
+```
+
+## 仕様書
+
+| 仕様書 | 状態 |
+| -------------------------------------------------------------------------------------------- | -------------------------------- |
+| {{SpecName('HTML WHATWG', 'media.html#event-media-change', 'change')}} | {{Spec2('HTML WHATWG')}} |
+
+## ブラウザーの互換性
+
+{{Compat("api.AudioTrackList.change_event")}}
+
+## 関連情報
+
+- 関連イベント: [`addtrack`](/ja/docs/Web/API/AudioTrackList/addtrack_event), [`removetrack`](/ja/docs/Web/API/AudioTrackList/removetrack_event)
+- [`VideoTrackList`](/ja/docs/Web/API/VideoTrackList) 対象でのこのイベント: [`change`](/ja/docs/Web/API/VideoTrackList/change_event)
+- [Media Streams API](/ja/docs/Web/API/Media_Streams_API)
+- [WebRTC API](/ja/docs/Web/API/WebRTC_API)
diff --git a/files/ja/web/api/audiotracklist/gettrackbyid/index.html b/files/ja/web/api/audiotracklist/gettrackbyid/index.html
deleted file mode 100644
index e7d4ddcf7335b1..00000000000000
--- a/files/ja/web/api/audiotracklist/gettrackbyid/index.html
+++ /dev/null
@@ -1,80 +0,0 @@
----
-title: AudioTrackList.getTrackById()
-slug: Web/API/AudioTrackList/getTrackById
-tags:
- - API
- - Audio
- - AudioTrackList
- - HTML DOM
- - Media
- - Method
- - Reference
- - Track ID
- - Track List
- - Tracks
- - getTrackById
- - id
- - track
-translation_of: Web/API/AudioTrackList/getTrackById
----
-{{APIRef("HTML DOM")}}
-
-{{domxref("AudioTrackList")}} の getTrackById()
メソッドは、指定された文字列と {{domxref("AudioTrack.id", "id")}} が一致するトラックリストから最初の {{domxref("AudioTrack")}} オブジェクトを返します。 ID 文字列がわかっていれば、これで特定のトラックを見つけることができます。
-
-構文
-
-var theTrack = AudioTrackList.getTrackById(id);
-
-パラメーター
-
-
- id
- - トラックリスト内で検索するトラックの ID を示す {{domxref("DOMString")}}。
-
-
-戻り値
-
-指定された文字列に一致する id
を持つ AudioTrackList
内で見つかった最初のトラックを示す {{domxref("AudioTrack")}} オブジェクト。 一致が見つからない場合、このメソッドは null
を返します。
-
-トラックは自然な順序で検索されます。 つまり、メディアリソース自体によって定義された順序で、またはリソースが順序を定義していない場合は、メディアリソースによってトラックが宣言される相対的な順序です。
-
-例
-
-この例は、映画をゲーム内のカットシーンまたは他の重要なセットのピースとして使用する架空のゲームを示唆しています。 各映画には、各キャラクターに1つの音声トラックがあり、音楽、効果音などにも1つの音声トラックがあります。 この関数により、ゲーム内の出来事に基づいて映画の演技を調整するために、ゲームは特定のキャラクターの音声を無効にすることができます。 キャラクターの対話が適切でない場合は、省略されます。 明らかにそれは作品を作るためにいくつかの巧妙なグラフィックデザインを必要とするでしょう、しかし...これは架空のゲームです。
-
-function disableCharacter(videoElem, characterName) {
- videoElem.audioTracks.getTrackById(characterName).enabled = false;
-}
-
-
-この短い関数は、{{domxref("HTMLMediaElement.audioTracks")}} を使用して動画の音声トラックを含む {{domxref("AudioTrackList")}} を取得し、それから getTrackById()
を呼び出してキャラクターの名前を指定します。 結果としてトラックの音声は、その {{domxref("AudioTrack.enabled", "enabled")}} フラグを false
に設定することで無効になります。
-
-仕様
-
-
-
-
- 仕様 |
- 状態 |
- コメント |
-
-
-
-
- {{SpecName('HTML WHATWG', '#dom-audiotracklist-gettrackbyid', 'AudioTrackList.getTrackById()')}} |
- {{Spec2('HTML WHATWG')}} |
- |
-
-
- {{SpecName('HTML5 W3C', 'embedded-content-0.html#dom-audiotracklist-getTrackById', 'AudioTrackList.getTrackById()')}} |
- {{Spec2('HTML5 W3C')}} |
- |
-
-
-
-
-ブラウザーの互換性
-
-
-
-{{Compat("api.AudioTrackList.getTrackById")}}
diff --git a/files/ja/web/api/audiotracklist/gettrackbyid/index.md b/files/ja/web/api/audiotracklist/gettrackbyid/index.md
new file mode 100644
index 00000000000000..0b53a8a3b09f8a
--- /dev/null
+++ b/files/ja/web/api/audiotracklist/gettrackbyid/index.md
@@ -0,0 +1,60 @@
+---
+title: AudioTrackList.getTrackById()
+slug: Web/API/AudioTrackList/getTrackById
+tags:
+ - API
+ - Audio
+ - AudioTrackList
+ - HTML DOM
+ - Media
+ - Method
+ - Reference
+ - Track ID
+ - Track List
+ - Tracks
+ - getTrackById
+ - id
+ - track
+translation_of: Web/API/AudioTrackList/getTrackById
+---
+{{APIRef("HTML DOM")}}
+
+**{{domxref("AudioTrackList")}}** の **`getTrackById()`** メソッドは、指定された文字列と {{domxref("AudioTrack.id", "id")}} が一致するトラックリストから最初の {{domxref("AudioTrack")}} オブジェクトを返します。 ID 文字列がわかっていれば、これで特定のトラックを見つけることができます。
+
+## 構文
+
+ var theTrack = AudioTrackList.getTrackById(id);
+
+### パラメーター
+
+- `id`
+ - : トラックリスト内で検索するトラックの ID を示す {{domxref("DOMString")}}。
+
+### 戻り値
+
+指定された文字列に一致する `id` を持つ `AudioTrackList` 内で見つかった最初のトラックを示す {{domxref("AudioTrack")}} オブジェクト。 一致が見つからない場合、このメソッドは `null` を返します。
+
+トラックは自然な順序で検索されます。 つまり、メディアリソース自体によって定義された順序で、またはリソースが順序を定義していない場合は、メディアリソースによってトラックが宣言される相対的な順序です。
+
+## 例
+
+この例は、映画をゲーム内のカットシーンまたは他の重要なセットのピースとして使用する架空のゲームを示唆しています。 各映画には、各キャラクターに 1 つの音声トラックがあり、音楽、効果音などにも 1 つの音声トラックがあります。 この関数により、ゲーム内の出来事に基づいて映画の演技を調整するために、ゲームは特定のキャラクターの音声を無効にすることができます。 キャラクターの対話が適切でない場合は、省略されます。 明らかにそれは作品を作るためにいくつかの巧妙なグラフィックデザインを必要とするでしょう、しかし...これは架空のゲームです。
+
+```js
+function disableCharacter(videoElem, characterName) {
+ videoElem.audioTracks.getTrackById(characterName).enabled = false;
+}
+```
+
+この短い関数は、{{domxref("HTMLMediaElement.audioTracks")}} を使用して動画の音声トラックを含む {{domxref("AudioTrackList")}} を取得し、それから `getTrackById()` を呼び出してキャラクターの名前を指定します。 結果としてトラックの音声は、その {{domxref("AudioTrack.enabled", "enabled")}} フラグを `false` に設定することで無効になります。
+
+## 仕様
+
+| 仕様 | 状態 | コメント |
+| ------------------------------------------------------------------------------------------------------------------------------------------------------------ | -------------------------------- | -------- |
+| {{SpecName('HTML WHATWG', '#dom-audiotracklist-gettrackbyid', 'AudioTrackList.getTrackById()')}} | {{Spec2('HTML WHATWG')}} | |
+| {{SpecName('HTML5 W3C', 'embedded-content-0.html#dom-audiotracklist-getTrackById', 'AudioTrackList.getTrackById()')}} | {{Spec2('HTML5 W3C')}} | |
+
+## ブラウザーの互換性
+
+{{Compat("api.AudioTrackList.getTrackById")}}
diff --git a/files/ja/web/api/audiotracklist/index.html b/files/ja/web/api/audiotracklist/index.html
deleted file mode 100644
index a77b44a96cc41a..00000000000000
--- a/files/ja/web/api/audiotracklist/index.html
+++ /dev/null
@@ -1,118 +0,0 @@
----
-title: AudioTrackList
-slug: Web/API/AudioTrackList
-tags:
- - API
- - Audio
- - AudioTrackList
- - HTML DOM
- - Interface
- - Media
- - Reference
- - Track List
- - Tracks
- - list
- - インターフェイス
-translation_of: Web/API/AudioTrackList
----
-{{APIRef("HTML DOM")}}
-
-AudioTrackList
インターフェイスは、所与の HTML メディア要素内に含まれる音声トラックのリストを表すために使用します。 各トラックはリスト内の別々の {{domxref("AudioTrack")}} オブジェクトで表します。
-
-{{domxref('HTMLMediaElement.audioTracks')}} を使用してこのオブジェクトのインスタンスを取得します。 個々のトラックは、配列構文を使用してアクセスできます。
-
-プロパティ
-
-このインターフェイスは、その親インターフェイスである {{domxref("EventTarget")}} からもプロパティを継承します。
-
-
- - {{domxref("AudioTrackList.length", "length")}} {{ReadOnlyInline}}
- - リスト内のトラック数
-
-
-イベントハンドラー
-
-
- - {{domxref("AudioTrackList.onaddtrack", "onaddtrack")}}
- - {{event("addtrack")}} イベントが発生したときに呼び出されるイベントハンドラー。 新しい音声トラックがメディア要素に追加されたことを示します。
- - {{domxref("AudioTrackList.onchange", "onchange")}}
- - {{event("change")}} イベントが発生したときに呼び出されるイベントハンドラー。 これは、1つ以上のトラックが {{domxref("AudioTrack.enabled", "enabled")}} フラグの変更により有効または無効になったときに発生します。
- - {{domxref("AudioTrackList.onremovetrack", "onremovetrack")}}
- - {{event("removetrack")}} イベントが発生したときに呼び出されるイベントハンドラー。 音声トラックがメディア要素から取り除かれたことを示します。
-
-
-メソッド
-
-このインターフェイスは、その親インターフェイスである {{domxref("EventTarget")}} からもメソッドを継承しています。
-
-
- - {{domxref("AudioTrackList.getTrackById", "getTrackById()")}}
- - 指定された文字列と一致する {{domxref("AudioTrack.id", "id")}} を持つ
AudioTrackList
内で見つかった {{domxref("AudioTrack")}} を返します。 一致が見つからない場合は、null
を返します。
-
-
-イベント
-
-
- - {{domxref("AudioTrackList.addtrack_event", "addtrack")}}
- - 新しい音声トラックがメディア要素に追加されたときに発生します。
- {{domxref("AudioTrackList.onaddtrack", "onaddtrack")}} プロパティからも利用できます。
- - {{domxref("AudioTrackList.change_event", "change")}}
- - トラックが有効または無効にされたときに発生します。
- {{domxref("AudioTrackList.onchange", "onchange")}} プロパティからも利用できます。
- - {{domxref("AudioTrackList.removetrack_event", "removetrack")}}
- - 音声トラックがメディア要素から取り除かれたときに発生します。
- {{domxref("AudioTrackList.onremovetrack", "onremovetrack")}} プロパティからも利用できます。
-
-
-使用上の注意
-
-AudioTrackList
を使用すると、メディア要素にある音声トラックに直接アクセスできるだけでなく、{{event("addtrack")}} イベントと {{event("removetrack")}} イベントにイベントハンドラを設定できるため、メディア要素のストリームにトラックが追加されたときまたは取り除かれたときに検出できます。 詳細と例については、{{domxref("AudioTrackList.onaddtrack", "onaddtrack")}} と {{domxref("AudioTrackList.onremovetrack", "onremovetrack")}} を参照してください。
-
-例
-
-
-
-メディア要素の {{domxref("AudioTrackList")}} を取得するには、その {{domxref("HTMLMediaElement.audioTracks", "audioTracks")}} プロパティを使用します。
-
-var audioTracks = document.querySelector("video").audioTracks;
-
-トラック数の変化の監視
-
-この例では、利用可能なチャンネル数に関する情報を表示するアプリがあります。 それを最新に保つために、{{event("addtrack")}} イベントと {{event("removetrack")}} イベントのためのハンドラを設定しています。
-
-audioTracks.onaddtrack = updateTrackCount;
-audioTracks.onremovetrack = updateTrackCount;
-
-function updateTrackCount(event) {
- trackCount = audioTracks.length;
- drawTrackCountIndicator(trackCount);
-}
-
-
-仕様書
-
-
-
-
- 仕様書 |
- 状態 |
- 備考 |
-
-
-
-
- {{SpecName('HTML WHATWG', 'media.html#audiotracklist', 'AudioTrackList')}} |
- {{Spec2('HTML WHATWG')}} |
- |
-
-
- {{SpecName('HTML5 W3C', 'embedded-content-0.html#audiotracklist', 'AudioTrackList')}} |
- {{Spec2('HTML5 W3C')}} |
- |
-
-
-
-
-ブラウザーの互換性
-
-{{Compat("api.AudioTrackList")}}
diff --git a/files/ja/web/api/audiotracklist/index.md b/files/ja/web/api/audiotracklist/index.md
new file mode 100644
index 00000000000000..9595b6cb76e134
--- /dev/null
+++ b/files/ja/web/api/audiotracklist/index.md
@@ -0,0 +1,96 @@
+---
+title: AudioTrackList
+slug: Web/API/AudioTrackList
+tags:
+ - API
+ - Audio
+ - AudioTrackList
+ - HTML DOM
+ - Interface
+ - Media
+ - Reference
+ - Track List
+ - Tracks
+ - list
+ - インターフェイス
+translation_of: Web/API/AudioTrackList
+---
+{{APIRef("HTML DOM")}}
+
+**`AudioTrackList`** インターフェイスは、所与の HTML メディア要素内に含まれる音声トラックのリストを表すために使用します。 各トラックはリスト内の別々の {{domxref("AudioTrack")}} オブジェクトで表します。
+
+{{domxref('HTMLMediaElement.audioTracks')}} を使用してこのオブジェクトのインスタンスを取得します。 個々のトラックは、配列構文を使用してアクセスできます。
+
+## プロパティ
+
+_このインターフェイスは、その親インターフェイスである {{domxref("EventTarget")}} からもプロパティを継承します。_
+
+- {{domxref("AudioTrackList.length", "length")}} {{ReadOnlyInline}}
+ - : リスト内のトラック数
+
+## イベントハンドラー
+
+- {{domxref("AudioTrackList.onaddtrack", "onaddtrack")}}
+ - : {{event("addtrack")}} イベントが発生したときに呼び出されるイベントハンドラー。 新しい音声トラックがメディア要素に追加されたことを示します。
+- {{domxref("AudioTrackList.onchange", "onchange")}}
+ - : {{event("change")}} イベントが発生したときに呼び出されるイベントハンドラー。 これは、1 つ以上のトラックが {{domxref("AudioTrack.enabled", "enabled")}} フラグの変更により有効または無効になったときに発生します。
+- {{domxref("AudioTrackList.onremovetrack", "onremovetrack")}}
+ - : {{event("removetrack")}} イベントが発生したときに呼び出されるイベントハンドラー。 音声トラックがメディア要素から取り除かれたことを示します。
+
+## メソッド
+
+_このインターフェイスは、その親インターフェイスである {{domxref("EventTarget")}} からもメソッドを継承しています。_
+
+- {{domxref("AudioTrackList.getTrackById", "getTrackById()")}}
+ - : 指定された文字列と一致する {{domxref("AudioTrack.id", "id")}} を持つ `AudioTrackList` 内で見つかった {{domxref("AudioTrack")}} を返します。 一致が見つからない場合は、`null` を返します。
+
+## イベント
+
+- {{domxref("AudioTrackList.addtrack_event", "addtrack")}}
+ - : 新しい音声トラックがメディア要素に追加されたときに発生します。
+ {{domxref("AudioTrackList.onaddtrack", "onaddtrack")}} プロパティからも利用できます。
+- {{domxref("AudioTrackList.change_event", "change")}}
+ - : トラックが有効または無効にされたときに発生します。
+ {{domxref("AudioTrackList.onchange", "onchange")}} プロパティからも利用できます。
+- {{domxref("AudioTrackList.removetrack_event", "removetrack")}}
+ - : 音声トラックがメディア要素から取り除かれたときに発生します。
+ {{domxref("AudioTrackList.onremovetrack", "onremovetrack")}} プロパティからも利用できます。
+
+## 使用上の注意
+
+`AudioTrackList` を使用すると、メディア要素にある音声トラックに直接アクセスできるだけでなく、{{event("addtrack")}} イベントと {{event("removetrack")}} イベントにイベントハンドラを設定できるため、メディア要素のストリームにトラックが追加されたときまたは取り除かれたときに検出できます。 詳細と例については、{{domxref("AudioTrackList.onaddtrack", "onaddtrack")}} と {{domxref("AudioTrackList.onremovetrack", "onremovetrack")}} を参照してください。
+
+## 例
+
+### メディア要素の音声トラックリストの取得
+
+メディア要素の {{domxref("AudioTrackList")}} を取得するには、その {{domxref("HTMLMediaElement.audioTracks", "audioTracks")}} プロパティを使用します。
+
+```js
+var audioTracks = document.querySelector("video").audioTracks;
+```
+
+### トラック数の変化の監視
+
+この例では、利用可能なチャンネル数に関する情報を表示するアプリがあります。 それを最新に保つために、{{event("addtrack")}} イベントと {{event("removetrack")}} イベントのためのハンドラを設定しています。
+
+```js
+audioTracks.onaddtrack = updateTrackCount;
+audioTracks.onremovetrack = updateTrackCount;
+
+function updateTrackCount(event) {
+ trackCount = audioTracks.length;
+ drawTrackCountIndicator(trackCount);
+}
+```
+
+## 仕様書
+
+| 仕様書 | 状態 | 備考 |
+| ---------------------------------------------------------------------------------------------------------------- | -------------------------------- | ---- |
+| {{SpecName('HTML WHATWG', 'media.html#audiotracklist', 'AudioTrackList')}} | {{Spec2('HTML WHATWG')}} | |
+| {{SpecName('HTML5 W3C', 'embedded-content-0.html#audiotracklist', 'AudioTrackList')}} | {{Spec2('HTML5 W3C')}} | |
+
+## ブラウザーの互換性
+
+{{Compat("api.AudioTrackList")}}
diff --git a/files/ja/web/api/audiotracklist/length/index.html b/files/ja/web/api/audiotracklist/length/index.html
deleted file mode 100644
index f64a0fbae6fb1e..00000000000000
--- a/files/ja/web/api/audiotracklist/length/index.html
+++ /dev/null
@@ -1,72 +0,0 @@
----
-title: AudioTrackList.length
-slug: Web/API/AudioTrackList/length
-tags:
- - API
- - Audio
- - AudioTrackList
- - HTML DOM
- - Media
- - Property
- - Read-only
- - Reference
- - length
- - list
- - track
-translation_of: Web/API/AudioTrackList/length
----
-{{APIRef("HTML DOM")}}
-
-読み取り専用の {{domxref("AudioTrackList")}} の length
プロパティは、AudioTrackList
内のエントリ数を返します。 各エントリは、メディア要素内の1つの音声トラックを表す {{domxref("AudioTrack")}} です。 値 0 は、メディアに音声トラックがないことを示します。
-
-構文
-
-var trackCount = AudioTrackList.length;
-
-値
-
-AudioTrackList
に含まれる音声トラックの数を示す数値。 AudioTrackList
を {{domxref("AudioTrack")}} 型のオブジェクトの配列として扱うことで、各トラックにアクセスできます。
-
-例
-
-このスニペットは、{{domxref("Document.querySelector", "querySelector()")}} によって {{Glossary("DOM")}} 内で見つかった最初の {{HTMLElement("video")}} 要素内の音声トラックの数を取得します。
-
-var videoElem = document.querySelector("video");
-var numAudioTracks = 0;
-
-if (videoElem.audioTracks) {
- numAudioTracks = videoElem.audioTracks.length;
-}
-
-
-このサンプルは、{{domxref("AudioTrack")}} をサポートしていないブラウザーで失敗するのを避けるために、{{domxref("HTMLMediaElement.audioTracks")}} が定義されていることを確認していることに注意してください。
-
-仕様
-
-
-
-
- 仕様 |
- 状態 |
- コメント |
-
-
-
-
- {{SpecName('HTML WHATWG', 'media.html#dom-audiotracklist-length', 'AudioTrackList.length')}} |
- {{Spec2('HTML WHATWG')}} |
- |
-
-
- {{SpecName('HTML5 W3C', 'embedded-content-0.html#dom-audiotracklist-length', 'AudioTrackList.length')}} |
- {{Spec2('HTML5 W3C')}} |
- |
-
-
-
-
-ブラウザーの互換性
-
-
-
-{{Compat("api.AudioTrackList.length")}}
diff --git a/files/ja/web/api/audiotracklist/length/index.md b/files/ja/web/api/audiotracklist/length/index.md
new file mode 100644
index 00000000000000..1f4c6ead405b22
--- /dev/null
+++ b/files/ja/web/api/audiotracklist/length/index.md
@@ -0,0 +1,54 @@
+---
+title: AudioTrackList.length
+slug: Web/API/AudioTrackList/length
+tags:
+ - API
+ - Audio
+ - AudioTrackList
+ - HTML DOM
+ - Media
+ - Property
+ - Read-only
+ - Reference
+ - length
+ - list
+ - track
+translation_of: Web/API/AudioTrackList/length
+---
+{{APIRef("HTML DOM")}}
+
+読み取り専用の **{{domxref("AudioTrackList")}}** の **`length`** プロパティは、`AudioTrackList` 内のエントリ数を返します。 各エントリは、メディア要素内の 1 つの音声トラックを表す {{domxref("AudioTrack")}} です。 値 0 は、メディアに音声トラックがないことを示します。
+
+## 構文
+
+ var trackCount = AudioTrackList.length;
+
+### 値
+
+`AudioTrackList` に含まれる音声トラックの数を示す数値。 `AudioTrackList` を {{domxref("AudioTrack")}} 型のオブジェクトの配列として扱うことで、各トラックにアクセスできます。
+
+## 例
+
+このスニペットは、{{domxref("Document.querySelector", "querySelector()")}} によって {{Glossary("DOM")}} 内で見つかった最初の {{HTMLElement("video")}} 要素内の音声トラックの数を取得します。
+
+```js
+var videoElem = document.querySelector("video");
+var numAudioTracks = 0;
+
+if (videoElem.audioTracks) {
+ numAudioTracks = videoElem.audioTracks.length;
+}
+```
+
+このサンプルは、{{domxref("AudioTrack")}} をサポートしていないブラウザーで失敗するのを避けるために、{{domxref("HTMLMediaElement.audioTracks")}} が定義されていることを確認していることに注意してください。
+
+## 仕様
+
+| 仕様 | 状態 | コメント |
+| ---------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------- | -------- |
+| {{SpecName('HTML WHATWG', 'media.html#dom-audiotracklist-length', 'AudioTrackList.length')}} | {{Spec2('HTML WHATWG')}} | |
+| {{SpecName('HTML5 W3C', 'embedded-content-0.html#dom-audiotracklist-length', 'AudioTrackList.length')}} | {{Spec2('HTML5 W3C')}} | |
+
+## ブラウザーの互換性
+
+{{Compat("api.AudioTrackList.length")}}
diff --git a/files/ja/web/api/audiotracklist/removetrack_event/index.html b/files/ja/web/api/audiotracklist/removetrack_event/index.html
deleted file mode 100644
index ea6d7dcbc3eaba..00000000000000
--- a/files/ja/web/api/audiotracklist/removetrack_event/index.html
+++ /dev/null
@@ -1,83 +0,0 @@
----
-title: 'AudioTrackList: removetrack イベント'
-slug: Web/API/AudioTrackList/removetrack_event
-tags:
- - AudioTrackList
- - Event
- - events
- - removeTrack
-translation_of: Web/API/AudioTrackList/removetrack_event
----
-{{APIRef}}
-
-removeTrack
イベントは、トラックが {{domxref("AudioTrackList")}} から取り除かれたときに発生します。
-
-
-
-
- バブリング |
- なし |
-
-
- キャンセル |
- 不可 |
-
-
- インターフェイス |
- {{domxref("TrackEvent")}} |
-
-
- イベントハンドラプロパティ |
- onremovetrack |
-
-
-
-
-例
-
-AddEventListener()
を使用する場合
-
-const videoElement = document.querySelector('video');
-
-videoElement.audioTracks.addEventListener('removetrack', (event) => {
- console.log(`Audio track: ${event.track.label} removed`);
-});
-
-onremovetrack
イベントハンドラプロパティを使用する場合
-
-const videoElement = document.querySelector('video');
-
-videoElement.audioTracks.onremovetrack = (event) => {
- console.log(`Audio track: ${event.track.label} removed`);
-};
-
-仕様
-
-
-
-
- 仕様 |
- 状態 |
-
-
- {{SpecName('HTML WHATWG', 'media.html#event-media-removetrack', 'removetrack')}} |
- {{Spec2('HTML WHATWG')}} |
-
-
-
-
-ブラウザーの互換性
-
-
-
-{{Compat("api.AudioTrackList.removetrack_event")}}
-
-See also
-
-
diff --git a/files/ja/web/api/audiotracklist/removetrack_event/index.md b/files/ja/web/api/audiotracklist/removetrack_event/index.md
new file mode 100644
index 00000000000000..ec9566728c6de2
--- /dev/null
+++ b/files/ja/web/api/audiotracklist/removetrack_event/index.md
@@ -0,0 +1,59 @@
+---
+title: 'AudioTrackList: removetrack イベント'
+slug: Web/API/AudioTrackList/removetrack_event
+tags:
+ - AudioTrackList
+ - Event
+ - events
+ - removeTrack
+translation_of: Web/API/AudioTrackList/removetrack_event
+---
+{{APIRef}}
+
+`removeTrack` イベントは、トラックが {{domxref("AudioTrackList")}} から取り除かれたときに発生します。
+
+| バブリング | なし |
+| -------------------------- | ---------------------------------------------------------------- |
+| キャンセル | 不可 |
+| インターフェイス | {{domxref("TrackEvent")}} |
+| イベントハンドラプロパティ | [`onremovetrack`](/ja/docs/Web/API/AudioTrackList/onremovetrack) |
+
+## 例
+
+`AddEventListener()` を使用する場合
+
+```js
+const videoElement = document.querySelector('video');
+
+videoElement.audioTracks.addEventListener('removetrack', (event) => {
+ console.log(`Audio track: ${event.track.label} removed`);
+});
+```
+
+`onremovetrack` イベントハンドラプロパティを使用する場合
+
+```js
+const videoElement = document.querySelector('video');
+
+videoElement.audioTracks.onremovetrack = (event) => {
+ console.log(`Audio track: ${event.track.label} removed`);
+};
+```
+
+## 仕様
+
+| 仕様 | 状態 |
+| ------------------------------------------------------------------------------------------------------------ | -------------------------------- |
+| {{SpecName('HTML WHATWG', 'media.html#event-media-removetrack', 'removetrack')}} | {{Spec2('HTML WHATWG')}} |
+
+## ブラウザーの互換性
+
+{{Compat("api.AudioTrackList.removetrack_event")}}
+
+## See also
+
+- 関連情報: [`addtrack`](/ja/docs/Web/API/AudioTrackList/addtrack_event), [`change`](/ja/docs/Web/API/AudioTrackList/change_event)
+- [`VideoTrackList`](/ja/docs/Web/API/VideoTrackList) 対象でのこのイベント: [`removetrack`](/ja/docs/Web/API/VideoTrackList/removetrack_event)
+- [`MediaStream`](/ja/docs/Web/API/MediaStream) 対象でのこのイベント: [`removetrack`](/ja/docs/Web/API/MediaStream/removetrack_event)
+- [Media Streams API](/ja/docs/Web/API/Media_Streams_API)
+- [WebRTC API](/ja/docs/Web/API/WebRTC_API)
diff --git a/files/ja/web/api/authenticatorassertionresponse/index.html b/files/ja/web/api/authenticatorassertionresponse/index.html
deleted file mode 100644
index 70a4bd060df6f7..00000000000000
--- a/files/ja/web/api/authenticatorassertionresponse/index.html
+++ /dev/null
@@ -1,89 +0,0 @@
----
-title: AuthenticatorAssertionResponse
-slug: Web/API/AuthenticatorAssertionResponse
-tags:
- - API
- - Authentication
- - AuthenticatorAssertionResponse
- - Interface
- - Reference
- - Web Authentication API
- - WebAuthn
- - インターフェイス
-translation_of: Web/API/AuthenticatorAssertionResponse
----
-{{APIRef("Web Authentication API")}}{{securecontext_header}}
-
-AuthenticatorAssertionResponse
は Web Authentication API のインターフェイスで、 {{domxref('CredentialsContainer.get()')}} に {{domxref('PublicKeyCredential')}} を渡すと返されます。そして、キーペアを持ち、認証付きリクエストが有効で承認されていることをサービスに証明します。
-
-このインターフェイスは {{domxref("AuthenticatorResponse")}} を継承しています。
-
-
-
メモ: このインターフェイスは最上位のコンテキストに限定されています。 {{HTMLElement("iframe")}} 要素の中で使用しても、何も効果がありません。
-
-
-プロパティ
-
-
- AuthenticatorAssertionResponse.clientDataJSON
{{securecontext_inline}}{{readonlyinline}}
- - 認証のためのクライアントデータで、オリジンやチャレンジです。 {{domxref("AuthenticatorAttestationResponse.clientDataJSON","clientDataJSON")}} プロパティは {{domxref("AuthenticatorResponse")}} から継承しています。
- - {{domxref("AuthenticatorAssertionResponse.authenticatorData")}} {{securecontext_inline}}{{readonlyinline}}
- - {{jsxref("ArrayBuffer")}} で、認証機器からの情報、例えば Relying Party ID Hash (rpIdHash)、証明カウンター、ユーザー存在テスト、ユーザー検証フラグ、その他の認証機器によって処理される拡張情報が入ります。
- - {{domxref("AuthenticatorAssertionResponse.signature")}} {{securecontext_inline}}{{readonlyinline}}
- - {{domxref("AuthenticatorAssertionResponse.authenticatorData")}} および {{domxref("AuthenticatorResponse.clientDataJSON")}} に関するアサーション署名です。アサーション署名は {{domxref("CredentialsContainer.create()","navigator.credentials.create()")}} の呼び出しで生成された鍵ペアの秘密鍵によって作成され、同じ鍵ペアの公開鍵によって検証されます。
- - {{domxref("AuthenticatorAssertionResponse.userHandle")}} {{securecontext_inline}}{{readonlyinline}}
- - {{jsxref("ArrayBuffer")}} で、非透過的なユーザー識別子が入ります。
-
-
-メソッド
-
-なし。
-
-例
-
-var options = {
- challenge: new Uint8Array([/* bytes sent from the server */])
-};
-
-navigator.credentials.get({ "publicKey": options })
- .then(function (credentialInfoAssertion) {
- var assertionResponse = credentialInfoAssertion.response;
- // Do something specific with the response
-
- // send assertion response back to the server
- // to proceed with the control of the credential
-}).catch(function (err) {
- console.error(err);
-});
-
-
-
-仕様書
-
-
-
-
- 仕様書 |
- 状態 |
- 備考 |
-
-
-
-
- {{SpecName('WebAuthn', '#iface-authenticatorassertionresponse', 'AuthenticatorAssertionResponse interface')}} |
- {{Spec2('WebAuthn')}} |
- 初回定義 |
-
-
-
-
-ブラウザーの互換性
-
-{{Compat("api.AuthenticatorAssertionResponse")}}
-
-関連情報
-
-
- - {{domxref("AuthenticatorAttestationResponse")}}: 新しい資格情報を生成する際に得られる種類のレスポンスのインターフェイス
- - {{domxref("AuthenticatorResponse")}}: 親インターフェイス
-
diff --git a/files/ja/web/api/authenticatorassertionresponse/index.md b/files/ja/web/api/authenticatorassertionresponse/index.md
new file mode 100644
index 00000000000000..f0d47e1df1e8f0
--- /dev/null
+++ b/files/ja/web/api/authenticatorassertionresponse/index.md
@@ -0,0 +1,70 @@
+---
+title: AuthenticatorAssertionResponse
+slug: Web/API/AuthenticatorAssertionResponse
+tags:
+ - API
+ - Authentication
+ - AuthenticatorAssertionResponse
+ - Interface
+ - Reference
+ - Web Authentication API
+ - WebAuthn
+ - インターフェイス
+translation_of: Web/API/AuthenticatorAssertionResponse
+---
+{{APIRef("Web Authentication API")}}{{securecontext_header}}
+
+**`AuthenticatorAssertionResponse`** は [Web Authentication API](/ja/docs/Web/API/Web_Authentication_API) のインターフェイスで、 {{domxref('CredentialsContainer.get()')}} に {{domxref('PublicKeyCredential')}} を渡すと返されます。そして、キーペアを持ち、認証付きリクエストが有効で承認されていることをサービスに証明します。
+
+このインターフェイスは {{domxref("AuthenticatorResponse")}} を継承しています。
+
+> **Note:** **メモ:** このインターフェイスは最上位のコンテキストに限定されています。 {{HTMLElement("iframe")}} 要素の中で使用しても、何も効果がありません。
+
+## プロパティ
+
+- `AuthenticatorAssertionResponse.clientDataJSON` {{securecontext_inline}}{{readonlyinline}}
+ - : 認証のためのクライアントデータで、オリジンやチャレンジです。 {{domxref("AuthenticatorAttestationResponse.clientDataJSON","clientDataJSON")}} プロパティは {{domxref("AuthenticatorResponse")}} から継承しています。
+- {{domxref("AuthenticatorAssertionResponse.authenticatorData")}} {{securecontext_inline}}{{readonlyinline}}
+ - : {{jsxref("ArrayBuffer")}} で、認証機器からの情報、例えば Relying Party ID Hash (rpIdHash)、証明カウンター、ユーザー存在テスト、ユーザー検証フラグ、その他の認証機器によって処理される拡張情報が入ります。
+- {{domxref("AuthenticatorAssertionResponse.signature")}} {{securecontext_inline}}{{readonlyinline}}
+ - : {{domxref("AuthenticatorAssertionResponse.authenticatorData")}} および {{domxref("AuthenticatorResponse.clientDataJSON")}} に関するアサーション署名です。アサーション署名は {{domxref("CredentialsContainer.create()","navigator.credentials.create()")}} の呼び出しで生成された鍵ペアの秘密鍵によって作成され、同じ鍵ペアの公開鍵によって検証されます。
+- {{domxref("AuthenticatorAssertionResponse.userHandle")}} {{securecontext_inline}}{{readonlyinline}}
+ - : {{jsxref("ArrayBuffer")}} で、非透過的なユーザー識別子が入ります。
+
+## メソッド
+
+なし。
+
+## 例
+
+```js
+var options = {
+ challenge: new Uint8Array([/* bytes sent from the server */])
+};
+
+navigator.credentials.get({ "publicKey": options })
+ .then(function (credentialInfoAssertion) {
+ var assertionResponse = credentialInfoAssertion.response;
+ // Do something specific with the response
+
+ // send assertion response back to the server
+ // to proceed with the control of the credential
+}).catch(function (err) {
+ console.error(err);
+});
+```
+
+## 仕様書
+
+| 仕様書 | 状態 | 備考 |
+| ------------------------------------------------------------------------------------------------------------------------------------------------ | ---------------------------- | -------- |
+| {{SpecName('WebAuthn', '#iface-authenticatorassertionresponse', 'AuthenticatorAssertionResponse interface')}} | {{Spec2('WebAuthn')}} | 初回定義 |
+
+## ブラウザーの互換性
+
+{{Compat("api.AuthenticatorAssertionResponse")}}
+
+## 関連情報
+
+- {{domxref("AuthenticatorAttestationResponse")}}: 新しい資格情報を生成する際に得られる種類のレスポンスのインターフェイス
+- {{domxref("AuthenticatorResponse")}}: 親インターフェイス
diff --git a/files/ja/web/api/authenticatorattestationresponse/index.html b/files/ja/web/api/authenticatorattestationresponse/index.html
deleted file mode 100644
index ab17b4a0bcc789..00000000000000
--- a/files/ja/web/api/authenticatorattestationresponse/index.html
+++ /dev/null
@@ -1,99 +0,0 @@
----
-title: AuthenticatorAttestationResponse
-slug: Web/API/AuthenticatorAttestationResponse
-tags:
- - API
- - Authentication
- - AuthenticatorAttestationResponse
- - Interface
- - Reference
- - Web Authentication API
- - WebAuthn
- - インターフェイス
-translation_of: Web/API/AuthenticatorAttestationResponse
----
-{{APIRef("Web Authentication API")}}{{securecontext_header}}
-
-AuthenticatorAttestationResponse
は Web Authentication API のインターフェイスで、 {{domxref('CredentialsContainer.create()')}} に {{domxref('PublicKeyCredential')}} を渡すと返されます。そして、生成された新しいキーペアの暗号化信頼ルートを提供します。このレスポンスは認証情報の生成を完了させるために、信頼されている側のサーバーに送信されます。
-
-このインターフェイスは {{domxref("AuthenticatorResponse")}} を継承しています。
-
-
-
メモ: このインターフェイスは最上位のコンテキストに限定されています。 {{HTMLElement("iframe")}} 要素の中で使用しても、何も効果がありません。
-
-
-プロパティ
-
-
- AuthenticatorAttestationResponse.clientDataJSON
{{securecontext_inline}}{{readonlyinline}}
- - 認証のためのクライアントデータで、オリジンやチャレンジです。 {{domxref("AuthenticatorAttestationResponse.clientDataJSON","clientDataJSON")}} プロパティは {{domxref("AuthenticatorResponse")}} から継承しています。
- - {{domxref("AuthenticatorAttestationResponse.attestationObject")}} {{securecontext_inline}}{{readonlyinline}}
- - {{jsxref("ArrayBuffer")}} で、新しく生成されたキーペアのための認証機器のデータとアテステーションステートメントが入ります。
-
-
-メソッド
-
-
- - {{domxref("AuthenticatorAttestationResponse.getTransports()")}}{{securecontext_inline}}
- - 文字列の {{jsxref("Array")}} で、認証機器がどの転送方法 (
usb
や nfc
など) に対応していると信じられるかを記述します。情報が利用できない場合は、配列が空になることがあります。
-
-
-例
-
-var publicKey = {
- challenge: /* from the server */,
- rp: {
- name: "Example CORP",
- id : "login.example.com"
- },
- user: {
- id: new Uint8Array(16),
- name: "jdoe@example.com",
- displayName: "John Doe"
- },
- pubKeyCredParams: [
- {
- type: "public-key",
- alg: -7
- }
- ]
-};
-
-navigator.credentials.create({ publicKey })
- .then(function (newCredentialInfo) {
- var response = newCredentialInfo.response;
- // Do something with the response
- // (sending it back to the relying party server maybe?)
- }).catch(function (err) {
- console.error(err);
- });
-
-仕様書
-
-
-
-
- 仕様書 |
- 状態 |
- 備考 |
-
-
-
-
- {{SpecName('WebAuthn','#authenticatorattestationresponse', 'AuthenticatorAttestationResponse interface')}} |
- {{Spec2('WebAuthn')}} |
- 初回定義 |
-
-
-
-
-ブラウザーの互換性
-
-{{Compat("api.AuthenticatorAttestationResponse")}}
-
-関連情報
-
-
- - {{domxref("AuthenticatorAssertionResponse")}}: 既存の認証情報を受け取る際にレスポンスの種類のインターフェイス
- - {{domxref("AuthenticatorResponse")}}: 親インターフェイス
-
diff --git a/files/ja/web/api/authenticatorattestationresponse/index.md b/files/ja/web/api/authenticatorattestationresponse/index.md
new file mode 100644
index 00000000000000..2f18f96f8e242b
--- /dev/null
+++ b/files/ja/web/api/authenticatorattestationresponse/index.md
@@ -0,0 +1,80 @@
+---
+title: AuthenticatorAttestationResponse
+slug: Web/API/AuthenticatorAttestationResponse
+tags:
+ - API
+ - Authentication
+ - AuthenticatorAttestationResponse
+ - Interface
+ - Reference
+ - Web Authentication API
+ - WebAuthn
+ - インターフェイス
+translation_of: Web/API/AuthenticatorAttestationResponse
+---
+{{APIRef("Web Authentication API")}}{{securecontext_header}}
+
+**`AuthenticatorAttestationResponse`** は [Web Authentication API](/ja/docs/Web/API/Web_Authentication_API) のインターフェイスで、 {{domxref('CredentialsContainer.create()')}} に {{domxref('PublicKeyCredential')}} を渡すと返されます。そして、生成された新しいキーペアの暗号化信頼ルートを提供します。このレスポンスは認証情報の生成を完了させるために、信頼されている側のサーバーに送信されます。
+
+このインターフェイスは {{domxref("AuthenticatorResponse")}} を継承しています。
+
+> **Note:** **メモ:** このインターフェイスは最上位のコンテキストに限定されています。 {{HTMLElement("iframe")}} 要素の中で使用しても、何も効果がありません。
+
+## プロパティ
+
+- `AuthenticatorAttestationResponse.clientDataJSON` {{securecontext_inline}}{{readonlyinline}}
+ - : 認証のためのクライアントデータで、オリジンやチャレンジです。 {{domxref("AuthenticatorAttestationResponse.clientDataJSON","clientDataJSON")}} プロパティは {{domxref("AuthenticatorResponse")}} から継承しています。
+- {{domxref("AuthenticatorAttestationResponse.attestationObject")}} {{securecontext_inline}}{{readonlyinline}}
+ - : {{jsxref("ArrayBuffer")}} で、新しく生成されたキーペアのための認証機器のデータとアテステーションステートメントが入ります。
+
+## メソッド
+
+- {{domxref("AuthenticatorAttestationResponse.getTransports()")}}{{securecontext_inline}}
+ - : 文字列の {{jsxref("Array")}} で、認証機器がどの転送方法 (`usb` や `nfc` など) に対応していると信じられるかを記述します。情報が利用できない場合は、配列が空になることがあります。
+
+## 例
+
+```js
+var publicKey = {
+ challenge: /* from the server */,
+ rp: {
+ name: "Example CORP",
+ id : "login.example.com"
+ },
+ user: {
+ id: new Uint8Array(16),
+ name: "jdoe@example.com",
+ displayName: "John Doe"
+ },
+ pubKeyCredParams: [
+ {
+ type: "public-key",
+ alg: -7
+ }
+ ]
+};
+
+navigator.credentials.create({ publicKey })
+ .then(function (newCredentialInfo) {
+ var response = newCredentialInfo.response;
+ // Do something with the response
+ // (sending it back to the relying party server maybe?)
+ }).catch(function (err) {
+ console.error(err);
+ });
+```
+
+## 仕様書
+
+| 仕様書 | 状態 | 備考 |
+| -------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------- | -------- |
+| {{SpecName('WebAuthn','#authenticatorattestationresponse', 'AuthenticatorAttestationResponse interface')}} | {{Spec2('WebAuthn')}} | 初回定義 |
+
+## ブラウザーの互換性
+
+{{Compat("api.AuthenticatorAttestationResponse")}}
+
+## 関連情報
+
+- {{domxref("AuthenticatorAssertionResponse")}}: 既存の認証情報を受け取る際にレスポンスの種類のインターフェイス
+- {{domxref("AuthenticatorResponse")}}: 親インターフェイス
diff --git a/files/ja/web/api/authenticatorresponse/index.html b/files/ja/web/api/authenticatorresponse/index.html
deleted file mode 100644
index 9f116bd2672934..00000000000000
--- a/files/ja/web/api/authenticatorresponse/index.html
+++ /dev/null
@@ -1,117 +0,0 @@
----
-title: AuthenticatorResponse
-slug: Web/API/AuthenticatorResponse
-tags:
- - API
- - Authentication
- - AuthenticatorResponse
- - Interface
- - Reference
- - Web Authentication API
- - WebAuthn
- - インターフェイス
-translation_of: Web/API/AuthenticatorResponse
----
-{{APIRef("Web Authentication API")}}{{securecontext_header}}
-
-AuthenticatorResponse
は Web Authentication API のインターフェイスで、キーペアを信頼する暗号化ルートを提供するインターフェイスの基本インターフェイスです。子インターフェイスでは、チャレンジのオリジンなどのブラウザーからの情報を含み、 {{domxref("PublicKeyCredential.response")}} から返されることがあります。
-
-AuthenticatorResponse に基づくインターフェイス
-
-以下のインターフェイスは AuthenticatorResponse インターフェイスに基づいています。
-
-
-
- - {{domxref("AuthenticatorAssertionResponse")}}
- - {{domxref("AuthenticatorAttestationResponse")}}
-
-
-
-プロパティ
-
-
- - {{domxref("AuthenticatorResponse.clientDataJSON")}}
- - JSON 文字列が入った {{domxref("ArrayBuffer")}} で、 {{domxref("CredentialsContainer.create()")}} または {{domxref("CredentialsContainer.get()")}} に渡されたクライアントデータを表します。
-
-
-メソッド
-
-なし。
-
-例
-
-AuthenticatorAssertionResponse の取得
-
-var options = {
- challenge: new Uint8Array([/* bytes sent from the server */])
-};
-
-navigator.credentials.get({ "publicKey": options })
- .then(function (credentialInfoAssertion) {
- var assertionResponse = credentialInfoAssertion.response;
- // send assertion response back to the server
- // to proceed with the control of the credential
-}).catch(function (err) {
- console.error(err);
-});
-
-
-
-AuthenticatorAttestationResponse の取得
-
-var publicKey = {
- challenge: /* from the server */,
- rp: {
- name: "Example CORP",
- id : "login.example.com"
- },
- user: {
- id: new Uint8Array(16),
- name: "jdoe@example.com",
- displayName: "John Doe"
- },
- pubKeyCredParams: [
- {
- type: "public-key",
- alg: -7
- }
- ]
-};
-
-navigator.credentials.create({ publicKey })
- .then(function (newCredentialInfo) {
- var attestationResponse = newCredentialInfo.response;
- }).catch(function (err) {
- console.error(err);
- });
-
-仕様書
-
-
-
-
- 仕様書 |
- 状態 |
- 備考 |
-
-
-
-
- {{SpecName('WebAuthn','#authenticatorresponse', 'AuthenticatorResponse interface')}} |
- {{Spec2('WebAuthn')}} |
- 初回定義 |
-
-
-
-
-ブラウザーの互換性
-
-{{Compat("api.PublicKeyCredentialRequestOptions")}}
-
-関連情報
-
-
- - {{domxref("AuthenticatorAttestationResponse")}}
- - {{domxref("AuthenticatorAssertionResponse")}}
- - {{domxref("PublicKeyCredential.response")}}
-
diff --git a/files/ja/web/api/authenticatorresponse/index.md b/files/ja/web/api/authenticatorresponse/index.md
new file mode 100644
index 00000000000000..97a7d09111bdd4
--- /dev/null
+++ b/files/ja/web/api/authenticatorresponse/index.md
@@ -0,0 +1,98 @@
+---
+title: AuthenticatorResponse
+slug: Web/API/AuthenticatorResponse
+tags:
+ - API
+ - Authentication
+ - AuthenticatorResponse
+ - Interface
+ - Reference
+ - Web Authentication API
+ - WebAuthn
+ - インターフェイス
+translation_of: Web/API/AuthenticatorResponse
+---
+{{APIRef("Web Authentication API")}}{{securecontext_header}}
+
+**`AuthenticatorResponse`** は [Web Authentication API](/ja/docs/Web/API/Web_Authentication_API) のインターフェイスで、キーペアを信頼する暗号化ルートを提供するインターフェイスの基本インターフェイスです。子インターフェイスでは、チャレンジのオリジンなどのブラウザーからの情報を含み、 {{domxref("PublicKeyCredential.response")}} から返されることがあります。
+
+## AuthenticatorResponse に基づくインターフェイス
+
+以下のインターフェイスは AuthenticatorResponse インターフェイスに基づいています。
+
+- {{domxref("AuthenticatorAssertionResponse")}}
+- {{domxref("AuthenticatorAttestationResponse")}}
+
+## プロパティ
+
+- {{domxref("AuthenticatorResponse.clientDataJSON")}}
+ - : [JSON](/ja/docs/Learn/JavaScript/Objects/JSON) 文字列が入った {{domxref("ArrayBuffer")}} で、 {{domxref("CredentialsContainer.create()")}} または {{domxref("CredentialsContainer.get()")}} に渡されたクライアントデータを表します。
+
+## メソッド
+
+なし。
+
+## 例
+
+### AuthenticatorAssertionResponse の取得
+
+```js
+var options = {
+ challenge: new Uint8Array([/* bytes sent from the server */])
+};
+
+navigator.credentials.get({ "publicKey": options })
+ .then(function (credentialInfoAssertion) {
+ var assertionResponse = credentialInfoAssertion.response;
+ // send assertion response back to the server
+ // to proceed with the control of the credential
+}).catch(function (err) {
+ console.error(err);
+});
+```
+
+### AuthenticatorAttestationResponse の取得
+
+```js
+var publicKey = {
+ challenge: /* from the server */,
+ rp: {
+ name: "Example CORP",
+ id : "login.example.com"
+ },
+ user: {
+ id: new Uint8Array(16),
+ name: "jdoe@example.com",
+ displayName: "John Doe"
+ },
+ pubKeyCredParams: [
+ {
+ type: "public-key",
+ alg: -7
+ }
+ ]
+};
+
+navigator.credentials.create({ publicKey })
+ .then(function (newCredentialInfo) {
+ var attestationResponse = newCredentialInfo.response;
+ }).catch(function (err) {
+ console.error(err);
+ });
+```
+
+## 仕様書
+
+| 仕様書 | 状態 | 備考 |
+| ---------------------------------------------------------------------------------------------------------------- | ---------------------------- | -------- |
+| {{SpecName('WebAuthn','#authenticatorresponse', 'AuthenticatorResponse interface')}} | {{Spec2('WebAuthn')}} | 初回定義 |
+
+## ブラウザーの互換性
+
+{{Compat("api.PublicKeyCredentialRequestOptions")}}
+
+## 関連情報
+
+- {{domxref("AuthenticatorAttestationResponse")}}
+- {{domxref("AuthenticatorAssertionResponse")}}
+- {{domxref("PublicKeyCredential.response")}}
diff --git a/files/ja/web/api/battery_status_api/index.html b/files/ja/web/api/battery_status_api/index.html
deleted file mode 100644
index 1f34ab41334292..00000000000000
--- a/files/ja/web/api/battery_status_api/index.html
+++ /dev/null
@@ -1,98 +0,0 @@
----
-title: Battery Status API
-slug: Web/API/Battery_Status_API
-tags:
- - API
- - Apps
- - Battery
- - Firefox OS
- - Guide
- - Mobile
- - ガイド
-translation_of: Web/API/Battery_Status_API
----
-{{DefaultAPISidebar("Battery API")}}{{deprecated_header}}
-
-Battery Status API は、 Battery API と呼ばれることの方が多いのですが、システムのバッテリー充電レベルに関する情報の提供、およびバッテリーレベルや充電状態が変化したときに発生するイベントによる通知を可能にします。これは、バッテリーが消耗したときにバッテリー消費を減らすためアプリのリソース使用状況を調整したり、データを失わないためにバッテリーが切れる前に変更点を保存したりするために使用できます。
-
-Battery Status API は {{domxref("window.navigator")}} を、 battery promise を返す {{domxref("navigator.getBattery()")}} メソッドで拡張します。 Promise は、バッテリーの状態監視を制御できる新たなイベントも提供する、{{domxref("BatteryManager")}} オブジェクトで解決します。
-
-例
-
-以下の例では、充電状況 (電源に接続して充電中であるか) の変化およびバッテリーレベルの変化およびタイミングを監視します。これは、 {{event("chargingchange")}}, {{event("levelchange")}}, {{event("chargingtimechange")}}, {{event("dischargingtimechange")}} の各イベントをそれぞれ待ち受けすることによって実現します。
-
-navigator.getBattery().then(function(battery) {
- function updateAllBatteryInfo(){
- updateChargeInfo();
- updateLevelInfo();
- updateChargingInfo();
- updateDischargingInfo();
- }
- updateAllBatteryInfo();
-
- battery.addEventListener('chargingchange', function(){
- updateChargeInfo();
- });
- function updateChargeInfo(){
- console.log("Battery charging? "
- + (battery.charging ? "Yes" : "No"));
- }
-
- battery.addEventListener('levelchange', function(){
- updateLevelInfo();
- });
- function updateLevelInfo(){
- console.log("Battery level: "
- + battery.level * 100 + "%");
- }
-
- battery.addEventListener('chargingtimechange', function(){
- updateChargingInfo();
- });
- function updateChargingInfo(){
- console.log("Battery charging time: "
- + battery.chargingTime + " seconds");
- }
-
- battery.addEventListener('dischargingtimechange', function(){
- updateDischargingInfo();
- });
- function updateDischargingInfo(){
- console.log("Battery discharging time: "
- + battery.dischargingTime + " seconds");
- }
-
-});
-
-
-仕様書に記載されているサンプルもご覧ください。
-
-仕様書
-
-
-
-
- 仕様書 |
- 状態 |
- 備考 |
-
-
-
-
- {{SpecName("Battery API")}} |
- {{Spec2("Battery API")}} |
- 初回定義 |
-
-
-
-
-ブラウザーの互換性
-
-{{Compat("api.BatteryManager")}}
-
-関連情報
-
-
diff --git a/files/ja/web/api/battery_status_api/index.md b/files/ja/web/api/battery_status_api/index.md
new file mode 100644
index 00000000000000..02ceadc016d06d
--- /dev/null
+++ b/files/ja/web/api/battery_status_api/index.md
@@ -0,0 +1,84 @@
+---
+title: Battery Status API
+slug: Web/API/Battery_Status_API
+tags:
+ - API
+ - Apps
+ - Battery
+ - Firefox OS
+ - Guide
+ - Mobile
+ - ガイド
+translation_of: Web/API/Battery_Status_API
+---
+{{DefaultAPISidebar("Battery API")}}{{deprecated_header}}
+
+**Battery Status API** は、 **Battery API** と呼ばれることの方が多いのですが、システムのバッテリー充電レベルに関する情報の提供、およびバッテリーレベルや充電状態が変化したときに発生するイベントによる通知を可能にします。これは、バッテリーが消耗したときにバッテリー消費を減らすためアプリのリソース使用状況を調整したり、データを失わないためにバッテリーが切れる前に変更点を保存したりするために使用できます。
+
+Battery Status API は {{domxref("window.navigator")}} を、 battery promise を返す {{domxref("navigator.getBattery()")}} メソッドで拡張します。 Promise は、バッテリーの状態監視を制御できる新たなイベントも提供する、{{domxref("BatteryManager")}} オブジェクトで解決します。
+
+## 例
+
+以下の例では、充電状況 (電源に接続して充電中であるか) の変化およびバッテリーレベルの変化およびタイミングを監視します。これは、 {{event("chargingchange")}}, {{event("levelchange")}}, {{event("chargingtimechange")}}, {{event("dischargingtimechange")}} の各イベントをそれぞれ待ち受けすることによって実現します。
+
+```js
+navigator.getBattery().then(function(battery) {
+ function updateAllBatteryInfo(){
+ updateChargeInfo();
+ updateLevelInfo();
+ updateChargingInfo();
+ updateDischargingInfo();
+ }
+ updateAllBatteryInfo();
+
+ battery.addEventListener('chargingchange', function(){
+ updateChargeInfo();
+ });
+ function updateChargeInfo(){
+ console.log("Battery charging? "
+ + (battery.charging ? "Yes" : "No"));
+ }
+
+ battery.addEventListener('levelchange', function(){
+ updateLevelInfo();
+ });
+ function updateLevelInfo(){
+ console.log("Battery level: "
+ + battery.level * 100 + "%");
+ }
+
+ battery.addEventListener('chargingtimechange', function(){
+ updateChargingInfo();
+ });
+ function updateChargingInfo(){
+ console.log("Battery charging time: "
+ + battery.chargingTime + " seconds");
+ }
+
+ battery.addEventListener('dischargingtimechange', function(){
+ updateDischargingInfo();
+ });
+ function updateDischargingInfo(){
+ console.log("Battery discharging time: "
+ + battery.dischargingTime + " seconds");
+ }
+
+});
+```
+
+[仕様書に記載されているサンプル](http://www.w3.org/TR/battery-status/#examples)もご覧ください。
+
+## 仕様書
+
+| 仕様書 | 状態 | 備考 |
+| ------------------------------------ | -------------------------------- | -------- |
+| {{SpecName("Battery API")}} | {{Spec2("Battery API")}} | 初回定義 |
+
+## ブラウザーの互換性
+
+{{Compat("api.BatteryManager")}}
+
+## 関連情報
+
+- [Retrieving battery status information - demo & article](/ja/Apps/Build/gather_and_modify_data/retrieving_battery_status_information)
+- [Hacks blog post - Using the Battery API](http://hacks.mozilla.org/2012/02/using-the-battery-api-part-of-webapi/)
diff --git a/files/ja/web/api/blob/arraybuffer/index.html b/files/ja/web/api/blob/arraybuffer/index.html
deleted file mode 100644
index 85f4a4ef0e9c06..00000000000000
--- a/files/ja/web/api/blob/arraybuffer/index.html
+++ /dev/null
@@ -1,73 +0,0 @@
----
-title: Blob.arrayBuffer()
-slug: Web/API/Blob/arrayBuffer
-tags:
- - API
- - ArrayBuffer
- - Blob
- - File API
- - Method
- - Reference
- - binary
- - read
-translation_of: Web/API/Blob/arrayBuffer
----
-{{APIRef("File API")}}
-
-{{domxref("Blob")}} インターフェイスの arrayBuffer()
メソッドは、{{domxref("ArrayBuffer")}} 内のバイナリデータとして Blob の内容を解決する {{jsxref("Promise")}} を返します。
-
-
-
-シンタックス
-
-var bufferPromise = blob.arrayBuffer();
-
-blob.arrayBuffer().then(buffer => /* ArrayBuffer を処理します。 */);
-
-var buffer = await blob.arrayBuffer();
-
-パラメータ
-
-なし
-
-戻り値
-
-Blob のデータをバイナリ形式で含む {{domxref("ArrayBuffer")}} で解決する Promise。
-
-例外
-
-このメソッドは例外をスローしませんが、Promise を拒否することがあります。例えば、Blob のデータを取得するために使用されたリーダーが例外をスローした場合などです。データの取得中に発生した例外はすべて拒否に変換されます。
-
-使用上のメモ
-
-{{domxref("FileReader.readAsArrayBuffer()")}} メソッドに似ていますが、arrayBuffer()
は、FileReader
インターフェイスのメソッドのようにイベントベースの API ではなく、Promise を返します。
-
-仕様
-
-
-
-
- 仕様書 |
- ステータス |
- コメント |
-
-
- {{SpecName("File API", "#dom-blob-arraybuffer", "Blob.arrayBuffer()")}} |
- {{Spec2("File API")}} |
- |
-
-
-
-
-ブラウザの互換性
-
-{{Compat("api.Blob.arrayBuffer")}}
-
-あわせて参照
-
-
- - {{domxref("Body.arrayBuffer()")}}
- - Streams API
- - {{domxref("FileReader.readAsArrayBuffer()")}}
-
diff --git a/files/ja/web/api/blob/arraybuffer/index.md b/files/ja/web/api/blob/arraybuffer/index.md
new file mode 100644
index 00000000000000..c45c78a5f4b17d
--- /dev/null
+++ b/files/ja/web/api/blob/arraybuffer/index.md
@@ -0,0 +1,57 @@
+---
+title: Blob.arrayBuffer()
+slug: Web/API/Blob/arrayBuffer
+tags:
+ - API
+ - ArrayBuffer
+ - Blob
+ - File API
+ - Method
+ - Reference
+ - binary
+ - read
+translation_of: Web/API/Blob/arrayBuffer
+---
+{{APIRef("File API")}}
+
+{{domxref("Blob")}} インターフェイスの **`arrayBuffer()`** メソッドは、{{domxref("ArrayBuffer")}} 内のバイナリデータとして Blob の内容を解決する {{jsxref("Promise")}} を返します。
+
+## シンタックス
+
+ var bufferPromise = blob.arrayBuffer();
+
+ blob.arrayBuffer().then(buffer => /* ArrayBuffer を処理します。 */);
+
+ var buffer = await blob.arrayBuffer();
+
+### パラメータ
+
+なし
+
+### 戻り値
+
+Blob のデータをバイナリ形式で含む {{domxref("ArrayBuffer")}} で解決する Promise。
+
+### 例外
+
+このメソッドは例外をスローしませんが、Promise を拒否することがあります。例えば、Blob のデータを取得するために使用されたリーダーが例外をスローした場合などです。データの取得中に発生した例外はすべて拒否に変換されます。
+
+## 使用上のメモ
+
+{{domxref("FileReader.readAsArrayBuffer()")}} メソッドに似ていますが、`arrayBuffer()` は、`FileReader` インターフェイスのメソッドのようにイベントベースの API ではなく、Promise を返します。
+
+## 仕様
+
+| 仕様書 | ステータス | コメント |
+| ------------------------------------------------------------------------------------------------ | ---------------------------- | -------- |
+| {{SpecName("File API", "#dom-blob-arraybuffer", "Blob.arrayBuffer()")}} | {{Spec2("File API")}} | |
+
+## ブラウザの互換性
+
+{{Compat("api.Blob.arrayBuffer")}}
+
+## あわせて参照
+
+- {{domxref("Body.arrayBuffer()")}}
+- [Streams API](/ja/docs/Web/API/Streams_API)
+- {{domxref("FileReader.readAsArrayBuffer()")}}
diff --git a/files/ja/web/api/blob/blob/index.html b/files/ja/web/api/blob/blob/index.html
deleted file mode 100644
index 6191cbf77c137c..00000000000000
--- a/files/ja/web/api/blob/blob/index.html
+++ /dev/null
@@ -1,77 +0,0 @@
----
-title: Blob()
-slug: Web/API/Blob/Blob
-tags:
- - API
- - Blob
- - Constructor
- - Experimental
- - File API
- - Reference
- - コンストラクター
-translation_of: Web/API/Blob/Blob
----
-{{APIRef("File API")}}
-
-Blob()
コンストラクターは、新たな {{domxref("Blob")}} オブジェクトを返します。その blob の中身は、引数 array
で与えられた値を連結したものから構成されています。
-
-構文
-
-var newBlob = new Blob(array, options);
-
-
-引数
-
-
- array
- - {{jsxref("Array")}} で、その中身が {{jsxref("ArrayBuffer")}}, {{domxref("ArrayBufferView")}}, {{domxref("Blob")}}, {{domxref("USVString")}} のオブジェクト、またはそのようなオブジェクトの何れかが混合したもので、それが {{domxref("Blob")}} の中に入れられます。
USVString
オブジェクトは UTF-8 で符号化されたものです。
- options
{{optional_inline}}
- -
-
任意で、以下のプロパティを指定する {{domxref("BlobPropertyBag")}} オブジェクトです。
-
-
- type
{{optional_inline}}
- - blob に格納されるデータの {{Glossary("MIME type", "MIME タイプ")}} です。既定値は空文字列 (
""
) です。
- endings
{{optional_inline}} {{non-standard_inline}}
- - データがテキストの場合、コンテンツ内の改行文字 (
\n
) の解釈方法を示します。既定値は transparent
であり、改行文字を変換することなく blob に格納します。改行文字をホストシステムの慣行に合わせるには、endings
を指定してください。
-
-
-
-
-返値
-
-指定されたデータを含む {{domxref("Blob")}} オブジェクトです。
-
-例
-
-var aFileParts = ['<a id="a"><b id="b">hey!</b></a>']; // 単一の DOMString からなる配列
-var oMyBlob = new Blob(aFileParts, {type : 'text/html'}); // blob
-
-仕様
-
-
-
-
- 仕様書 |
- 状態 |
- 備考 |
-
-
-
-
- {{SpecName('File API', '#constructorBlob', 'Blob()')}} |
- {{Spec2('File API')}} |
- 初回定義 |
-
-
-
-
-ブラウザの互換性
-
-{{Compat("api.Blob.Blob")}}
-
-あわせて参照
-
-
- - このコンストラクターによって置き換えられた非推奨の {{domxref("BlobBuilder")}} インターフェイス
-
diff --git a/files/ja/web/api/blob/blob/index.md b/files/ja/web/api/blob/blob/index.md
new file mode 100644
index 00000000000000..de2720536b2a3e
--- /dev/null
+++ b/files/ja/web/api/blob/blob/index.md
@@ -0,0 +1,55 @@
+---
+title: Blob()
+slug: Web/API/Blob/Blob
+tags:
+ - API
+ - Blob
+ - Constructor
+ - Experimental
+ - File API
+ - Reference
+ - コンストラクター
+translation_of: Web/API/Blob/Blob
+---
+{{APIRef("File API")}}
+
+**`Blob()`** コンストラクターは、新たな {{domxref("Blob")}} オブジェクトを返します。その blob の中身は、引数 `array` で与えられた値を連結したものから構成されています。
+
+## 構文
+
+ var newBlob = new Blob(array, options);
+
+### 引数
+
+- `array`
+ - : {{jsxref("Array")}} で、その中身が {{jsxref("ArrayBuffer")}}, {{domxref("ArrayBufferView")}}, {{domxref("Blob")}}, {{domxref("USVString")}} のオブジェクト、またはそのようなオブジェクトの何れかが混合したもので、それが {{domxref("Blob")}} の中に入れられます。 `USVString` オブジェクトは UTF-8 で符号化されたものです。
+- `options` {{optional_inline}}
+ - : 任意で、以下のプロパティを指定する {{domxref("BlobPropertyBag")}} オブジェクトです。_ `type` {{optional_inline}}
+ _ : blob に格納されるデータの {{Glossary("MIME type", "MIME タイプ")}} です。既定値は空文字列 (`""`) です。
+ - `endings` {{optional_inline}} {{non-standard_inline}}
+ - : データがテキストの場合、コンテンツ内の改行文字 (`\n`) の解釈方法を示します。既定値は `transparent` であり、改行文字を変換することなく blob に格納します。改行文字をホストシステムの慣行に合わせるには、`endings` を指定してください。
+
+### 返値
+
+指定されたデータを含む {{domxref("Blob")}} オブジェクトです。
+
+## 例
+
+```js
+var aFileParts = ['hey!']; // 単一の DOMString からなる配列
+var oMyBlob = new Blob(aFileParts, {type : 'text/html'}); // blob
+```
+
+## 仕様
+
+| 仕様書 | 状態 | 備考 |
+| ------------------------------------------------------------------------ | ---------------------------- | -------- |
+| {{SpecName('File API', '#constructorBlob', 'Blob()')}} | {{Spec2('File API')}} | 初回定義 |
+
+## ブラウザの互換性
+
+{{Compat("api.Blob.Blob")}}
+
+## あわせて参照
+
+- このコンストラクターによって置き換えられた非推奨の {{domxref("BlobBuilder")}} インターフェイス
diff --git a/files/ja/web/api/blob/size/index.html b/files/ja/web/api/blob/size/index.html
deleted file mode 100644
index 408fe28a2f0c86..00000000000000
--- a/files/ja/web/api/blob/size/index.html
+++ /dev/null
@@ -1,75 +0,0 @@
----
-title: Blob.size
-slug: Web/API/Blob/size
-tags:
- - API
- - Blob
- - Bytes
- - File API
- - Files
- - Property
- - Reference
- - length
- - size
-translation_of: Web/API/Blob/size
----
-
-
{{APIRef("File API")}}
-
-
{{domxref("Blob")}} インターフェイスの size
プロパティは、{{domxref("Blob")}} または {{domxref("File")}} のサイズをバイト単位で返します。
-
-
シンタックス
-
-
var sizeInBytes = blob.size
-
-
-
値
-
-
Blob
(または Blob
ベースのオブジェクト、例えば{{domxref("File")}}) 内に含まれるデータのバイト数。
-
-
例
-
-
この例では、file
型の {{HTMLElement("input")}} 要素を使用して、ユーザーにファイルのグループを尋ね、それらのファイルを繰り返し処理して、その名前と長さをバイト単位で出力しています。
-
-
// fileInputは HTMLInputElement <input type="file" multiple id="myfileinput"> です。
-var fileInput = document.getElementById("myfileinput");
-
-// files は FileList オブジェクトです (NodeList に似ています)。
-var files = fileInput.files;
-
-for (var i = 0; i < files.length; i++) {
- console.log(files[i].name + " has a size of " + files[i].size + " Bytes");
-}
-
-
仕様
-
-
-
-
- 仕様書 |
- ステータス |
- コメント |
-
-
- {{SpecName('File API', '#dfn-size', 'Blob.size')}} |
- {{Spec2('File API')}} |
- 初期定義 |
-
-
-
-
-
ブラウザの互換性
-
-
-
{{Compat("api.Blob.size")}}
-
-
-
あわせて参照
-
-
-
diff --git a/files/ja/web/api/blob/size/index.md b/files/ja/web/api/blob/size/index.md
new file mode 100644
index 00000000000000..b79a5fbb306f65
--- /dev/null
+++ b/files/ja/web/api/blob/size/index.md
@@ -0,0 +1,57 @@
+---
+title: Blob.size
+slug: Web/API/Blob/size
+tags:
+ - API
+ - Blob
+ - Bytes
+ - File API
+ - Files
+ - Property
+ - Reference
+ - length
+ - size
+translation_of: Web/API/Blob/size
+---
+{{APIRef("File API")}}
+
+{{domxref("Blob")}} インターフェイスの **`size`** プロパティは、{{domxref("Blob")}} または {{domxref("File")}} のサイズをバイト単位で返します。
+
+## シンタックス
+
+ var sizeInBytes = blob.size
+
+### 値
+
+`Blob` (または `Blob` ベースのオブジェクト、例えば{{domxref("File")}}) 内に含まれるデータのバイト数。
+
+## 例
+
+この例では、`file` 型の {{HTMLElement("input")}} 要素を使用して、ユーザーにファイルのグループを尋ね、それらのファイルを繰り返し処理して、その名前と長さをバイト単位で出力しています。
+
+```js
+// fileInputは HTMLInputElement です。
+var fileInput = document.getElementById("myfileinput");
+
+// files は FileList オブジェクトです (NodeList に似ています)。
+var files = fileInput.files;
+
+for (var i = 0; i < files.length; i++) {
+ console.log(files[i].name + " has a size of " + files[i].size + " Bytes");
+}
+```
+
+## 仕様
+
+| 仕様書 | ステータス | コメント |
+| -------------------------------------------------------------------- | ---------------------------- | -------- |
+| {{SpecName('File API', '#dfn-size', 'Blob.size')}} | {{Spec2('File API')}} | 初期定義 |
+
+## ブラウザの互換性
+
+{{Compat("api.Blob.size")}}
+
+## あわせて参照
+
+- {{domxref("Blob")}}
+- [Web アプリケーションからのファイルの使用](/ja/docs/Web/API/File/Using_files_from_web_applications)
diff --git a/files/ja/web/api/blob/slice/index.html b/files/ja/web/api/blob/slice/index.html
deleted file mode 100644
index d284b4a829d068..00000000000000
--- a/files/ja/web/api/blob/slice/index.html
+++ /dev/null
@@ -1,69 +0,0 @@
----
-title: Blob.slice()
-slug: Web/API/Blob/slice
-tags:
- - API
- - Blob
- - File
- - File API
- - Method
- - Reference
- - Section
- - Subset
- - data
- - slice
- - split
-translation_of: Web/API/Blob/slice
----
-{{APIRef("File API")}}
-
-{{domxref("Blob")}} インターフェイスの slice()
メソッドは、呼び出された blob のサブセットのデータを含む新しい Blob
オブジェクトを作成して返します。
-
-構文
-
-var newBlob = blob.slice(start, end, contentType);
-
-パラメータ
-
-
- start
{{optional_inline}}
- - 新しい {{domxref("Blob")}} に含める最初のバイトを示す {{domxref("Blob")}} へのインデックス。負の値を指定すると、{{domxref("Blob")}} の末尾から先頭へのオフセットとして扱われます。例えば、-10 は {{domxref("Blob")}} の最後のバイトから10番目になります。デフォルト値は 0 です。
start
にもとの {{domxref("Blob")}} のサイズよりも大きい値を指定すると、返される {{domxref("Blob")}} のサイズは 0 で、データは何も含まれません。
- end
{{optional_inline}}
- - 新しい {{domxref("Blob")}} に含まれない最初のバイトを示す {{domxref("Blob")}} へのインデックス。(つまり、このインデックスに正確に位置するバイトは含まれません)。負の値を指定すると、{{domxref("Blob")}} の末尾から先頭へのオフセットとして扱われます。例えば、-10は {{domxref("Blob")}} の最後のバイトから10番目になります。デフォルト値は
size
です。
- contentType
{{optional_inline}}
- - 新しい {{domxref("Blob")}} に割り当てるコンテンツの型。これはその
type
プロパティの値になります。デフォルト値は空の文字列です。
-
-
-戻り値
-
-このメソッドが呼び出された Blob 内に含まれるデータの指定されたサブセットを含む新しい {{domxref("Blob")}} オブジェクト。元の Blob は変更されません。
-
-仕様
-
-
-
-
- 仕様 |
- ステータス |
- コメント |
-
-
- {{SpecName("File API", "#dfn-slice", "Blob.slice()")}} |
- {{Spec2("File API")}} |
- 初期定義。 |
-
-
-
-
-ブラウザの実装状況
-
-{{Compat("api.Blob.slice")}}
-
-あわせて参照
-
-
diff --git a/files/ja/web/api/blob/slice/index.md b/files/ja/web/api/blob/slice/index.md
new file mode 100644
index 00000000000000..fb645f5594d88f
--- /dev/null
+++ b/files/ja/web/api/blob/slice/index.md
@@ -0,0 +1,52 @@
+---
+title: Blob.slice()
+slug: Web/API/Blob/slice
+tags:
+ - API
+ - Blob
+ - File
+ - File API
+ - Method
+ - Reference
+ - Section
+ - Subset
+ - data
+ - slice
+ - split
+translation_of: Web/API/Blob/slice
+---
+{{APIRef("File API")}}
+
+{{domxref("Blob")}} インターフェイスの **`slice()`** メソッドは、呼び出された blob のサブセットのデータを含む新しい `Blob` オブジェクトを作成して返します。
+
+## 構文
+
+ var newBlob = blob.slice(start, end, contentType);
+
+### パラメータ
+
+- `start` {{optional_inline}}
+ - : 新しい {{domxref("Blob")}} に含める最初のバイトを示す {{domxref("Blob")}} へのインデックス。負の値を指定すると、{{domxref("Blob")}} の末尾から先頭へのオフセットとして扱われます。例えば、-10 は {{domxref("Blob")}} の最後のバイトから 10 番目になります。デフォルト値は 0 です。`start` にもとの {{domxref("Blob")}} のサイズよりも大きい値を指定すると、返される {{domxref("Blob")}} のサイズは 0 で、データは何も含まれません。
+- `end` {{optional_inline}}
+ - : 新しい {{domxref("Blob")}} に**含まれない**最初のバイトを示す {{domxref("Blob")}} へのインデックス。(つまり、このインデックスに正確に位置するバイトは含まれません)。負の値を指定すると、{{domxref("Blob")}} の末尾から先頭へのオフセットとして扱われます。例えば、-10 は {{domxref("Blob")}} の最後のバイトから 10 番目になります。デフォルト値は `size` です。
+- `contentType` {{optional_inline}}
+ - : 新しい {{domxref("Blob")}} に割り当てるコンテンツの型。これはその `type` プロパティの値になります。デフォルト値は空の文字列です。
+
+### 戻り値
+
+このメソッドが呼び出された Blob 内に含まれるデータの指定されたサブセットを含む新しい {{domxref("Blob")}} オブジェクト。元の Blob は変更されません。
+
+## 仕様
+
+| 仕様 | ステータス | コメント |
+| ------------------------------------------------------------------------ | ---------------------------- | ---------- |
+| {{SpecName("File API", "#dfn-slice", "Blob.slice()")}} | {{Spec2("File API")}} | 初期定義。 |
+
+## ブラウザの実装状況
+
+{{Compat("api.Blob.slice")}}
+
+## あわせて参照
+
+- {{domxref("Blob")}}
+- [Web アプリケーションからのファイルの使用](/ja/docs/Web/API/File/Using_files_from_web_applications)
diff --git a/files/ja/web/api/blob/stream/index.html b/files/ja/web/api/blob/stream/index.html
deleted file mode 100644
index 083f2f2b961373..00000000000000
--- a/files/ja/web/api/blob/stream/index.html
+++ /dev/null
@@ -1,69 +0,0 @@
----
-title: Blob.stream()
-slug: Web/API/Blob/stream
-tags:
- - API
- - Blob
- - Change
- - Convert
- - File API
- - Method
- - ReadableStream
- - Reference
- - stream
-translation_of: Web/API/Blob/stream
----
-{{APIRef("File API")}}
-
-{{domxref("Blob")}} インターフェイスのstream()
メソッドは、{{domxref("ReadableStream")}} を返します。これは、読み取り時に、Blob
に含まれるデータを返します。
-
-シンタックス
-
-var stream = blob.stream();
-
-パラメータ
-
-なし
-
-戻り値
-
-読み込んだときに、Blob
の内容を {{domxref("ReadableStream")}} で返します。
-
-使用上のメモ
-
-stream()
と返された {{domxref("ReadableStream")}} を使用すると、いくつかの興味深い機能を得ることができます。
-
-
- - 返されたストリーム上で{{domxref("ReadableStream.getReader", "getReader()")}} を呼び出して、{{domxref("ReadableStreamDefaultReader")}} インターフェイスの{{domxref("ReadableStreamDefaultReader.read", "read()")}} メソッドのようなメソッドを使用して、Blob からデータを読み取るために使用するオブジェクトを取得します
- - 返されたストリームの {{domxref("ReadableStream.pipeTo", "pipeTo()")}} メソッドを呼び出して、Blob のデータを書き込み可能なストリームにパイプします
- - 返されたストリームの {{domxref("ReadableStream.tee", "tee()")}} メソッドを呼び出して、可読ストリームを tee します。これは、2つの新しい
ReadableStream
オブジェクトを含む配列を返し、それぞれが Blob
の内容を返します
- - 返されたストリームの {{domxref("ReadableStream.pipeThrough", "pipeThrough()")}} メソッドを呼び出して、ストリームを {{domxref("TransformStream")}} またはその他の可読および書き込み可能なペアにパイプします
-
-
-仕様
-
-
-
-
- 仕様書 |
- ステータス |
- コメント |
-
-
- {{SpecName("File API", "#dom-blob-stream", "Blob.stream()")}} |
- {{Spec2("File API")}} |
- |
-
-
-
-
-ブラウザの互換性
-
-{{Compat("api.Blob.stream")}}
-
-あわせて参照
-
-
diff --git a/files/ja/web/api/blob/stream/index.md b/files/ja/web/api/blob/stream/index.md
new file mode 100644
index 00000000000000..9ebb789debc74c
--- /dev/null
+++ b/files/ja/web/api/blob/stream/index.md
@@ -0,0 +1,54 @@
+---
+title: Blob.stream()
+slug: Web/API/Blob/stream
+tags:
+ - API
+ - Blob
+ - Change
+ - Convert
+ - File API
+ - Method
+ - ReadableStream
+ - Reference
+ - stream
+translation_of: Web/API/Blob/stream
+---
+{{APIRef("File API")}}
+
+{{domxref("Blob")}} インターフェイスの**`stream()`** メソッドは、{{domxref("ReadableStream")}} を返します。これは、読み取り時に、`Blob` に含まれるデータを返します。
+
+## シンタックス
+
+ var stream = blob.stream();
+
+### パラメータ
+
+なし
+
+### 戻り値
+
+読み込んだときに、`Blob` の内容を {{domxref("ReadableStream")}} で返します。
+
+## 使用上のメモ
+
+`stream()` と返された {{domxref("ReadableStream")}} を使用すると、いくつかの興味深い機能を得ることができます。
+
+- 返されたストリーム上で{{domxref("ReadableStream.getReader", "getReader()")}} を呼び出して、{{domxref("ReadableStreamDefaultReader")}} インターフェイスの{{domxref("ReadableStreamDefaultReader.read", "read()")}} メソッドのようなメソッドを使用して、Blob からデータを読み取るために使用するオブジェクトを取得します
+- 返されたストリームの {{domxref("ReadableStream.pipeTo", "pipeTo()")}} メソッドを呼び出して、Blob のデータを書き込み可能なストリームにパイプします
+- 返されたストリームの {{domxref("ReadableStream.tee", "tee()")}} メソッドを呼び出して、可読ストリームを **tee** します。これは、2 つの新しい `ReadableStream` オブジェクトを含む配列を返し、それぞれが `Blob` の内容を返します
+- 返されたストリームの {{domxref("ReadableStream.pipeThrough", "pipeThrough()")}} メソッドを呼び出して、ストリームを {{domxref("TransformStream")}} またはその他の可読および書き込み可能なペアにパイプします
+
+## 仕様
+
+| 仕様書 | ステータス | コメント |
+| -------------------------------------------------------------------------------- | ---------------------------- | -------- |
+| {{SpecName("File API", "#dom-blob-stream", "Blob.stream()")}} | {{Spec2("File API")}} | |
+
+## ブラウザの互換性
+
+{{Compat("api.Blob.stream")}}
+
+## あわせて参照
+
+- {{domxref("Body.body")}}
+- [Streams API](/ja/docs/Web/API/Streams_API)
diff --git a/files/ja/web/api/blob/text/index.html b/files/ja/web/api/blob/text/index.html
deleted file mode 100644
index 4dfef08d021bd8..00000000000000
--- a/files/ja/web/api/blob/text/index.html
+++ /dev/null
@@ -1,77 +0,0 @@
----
-title: Blob.text()
-slug: Web/API/Blob/text
-tags:
- - API
- - Blob
- - File API
- - Method
- - Reference
- - String
- - Text
- - Utf-8
- - get
- - read
-translation_of: Web/API/Blob/text
----
-{{APIRef("File API")}}
-
-{{domxref("Blob")}} インターフェイスの text()
メソッドは {{jsxref("Promise")}} を返しますが、それは Blob の内容を含む文字列で解決され、UTF-8 として解釈されます。
-
-
-
-シンタックス
-
-var textPromise = blob.text();
-
-blob.text().then(text => /* テキストに対して処理をする */);
-
-var text = await blob.text();
-
-
-パラメータ
-
-なし
-
-戻り値
-
-Blob のデータをテキスト文字列として含む {{domxref("USVString")}} で解決する Promise。データは常に UTF-8 形式であると推定されます。
-
-使用上のメモ
-
-{{domxref("FileReader")}} メソッド {{domxref("FileReader.readAsText", "readAsText()")}} は、同様の機能を実行する古いメソッドです。これは、Blob
と {{domxref("File")}} オブジェクトの両方で動作します。主な違いは2つあります。
-
-
- Blob.text()
が Promise を返すのに対し、FileReader.readAsText()
はイベントベースの API です
- Blob.text()
は常にエンコーディングとして UTF-8 を使用しますが、FileReader.readAsText()
は Blob のタイプと指定されたエンコーディング名に応じて異なるエンコーディングを使用することができます
-
-
-仕様
-
-
-
-
- 仕様書 |
- ステータス |
- コメント |
-
-
- {{SpecName("File API", "#dom-blob-text", "Blob.text()")}} |
- {{Spec2("File API")}} |
- |
-
-
-
-
-ブラウザの互換性
-
-{{Compat("api.Blob.text")}}
-
-あわせて参照
-
-
- - {{domxref("Body.text()")}}
- - Streams API
- - {{domxref("FileReader.readAsText()")}}
-
diff --git a/files/ja/web/api/blob/text/index.md b/files/ja/web/api/blob/text/index.md
new file mode 100644
index 00000000000000..f3b81850023e21
--- /dev/null
+++ b/files/ja/web/api/blob/text/index.md
@@ -0,0 +1,58 @@
+---
+title: Blob.text()
+slug: Web/API/Blob/text
+tags:
+ - API
+ - Blob
+ - File API
+ - Method
+ - Reference
+ - String
+ - Text
+ - Utf-8
+ - get
+ - read
+translation_of: Web/API/Blob/text
+---
+{{APIRef("File API")}}
+
+{{domxref("Blob")}} インターフェイスの **`text()`** メソッドは {{jsxref("Promise")}} を返しますが、それは Blob の内容を含む文字列で解決され、UTF-8 として解釈されます。
+
+## シンタックス
+
+ var textPromise = blob.text();
+
+ blob.text().then(text => /* テキストに対して処理をする */);
+
+ var text = await blob.text();
+
+### パラメータ
+
+なし
+
+### 戻り値
+
+Blob のデータをテキスト文字列として含む {{domxref("USVString")}} で解決する Promise。データは*常に* UTF-8 形式であると推定されます。
+
+## 使用上のメモ
+
+{{domxref("FileReader")}} メソッド {{domxref("FileReader.readAsText", "readAsText()")}} は、同様の機能を実行する古いメソッドです。これは、`Blob` と {{domxref("File")}} オブジェクトの両方で動作します。主な違いは 2 つあります。
+
+- `Blob.text()` が Promise を返すのに対し、`FileReader.readAsText()` はイベントベースの API です
+- `Blob.text()` は常にエンコーディングとして UTF-8 を使用しますが、`FileReader.readAsText()` は Blob のタイプと指定されたエンコーディング名に応じて異なるエンコーディングを使用することができます
+
+## 仕様
+
+| 仕様書 | ステータス | コメント |
+| ---------------------------------------------------------------------------- | ---------------------------- | -------- |
+| {{SpecName("File API", "#dom-blob-text", "Blob.text()")}} | {{Spec2("File API")}} | |
+
+## ブラウザの互換性
+
+{{Compat("api.Blob.text")}}
+
+## あわせて参照
+
+- {{domxref("Body.text()")}}
+- [Streams API](/ja/docs/Web/API/Streams_API)
+- {{domxref("FileReader.readAsText()")}}
diff --git a/files/ja/web/api/blob/type/index.html b/files/ja/web/api/blob/type/index.html
deleted file mode 100644
index 6bad42e0525d82..00000000000000
--- a/files/ja/web/api/blob/type/index.html
+++ /dev/null
@@ -1,83 +0,0 @@
----
-title: Blob.type
-slug: Web/API/Blob/type
-tags:
- - API
- - Blob
- - DOM
- - File
- - File API
- - Format
- - MIME
- - MIME Type
- - Property
- - Reference
- - Type
-translation_of: Web/API/Blob/type
----
-{{APIRef("File API")}}
-
-{{domxref("Blob")}} オブジェクトの type
プロパティは、ファイルの {{Glossary("MIME type")}} を返します。
-
-シンタックス
-
-var mimetype = blob.type
-
-値
-
-ファイルの MIME タイプを含む {{domxref("DOMString")}}、または型が特定できなかった場合は空文字列を指定します。
-
-例
-
-この例では、ユーザーにいくつかのファイルを選択してもらい、各ファイルが指定された画像ファイルタイプのセットのいずれかであるかどうかを確認します。
-
-var i, fileInput, files, allowedFileTypes;
-
-// fileInput は HTMLInputElement <input type="file" multiple id="myfileinput"> です。
-fileInput = document.getElementById("myfileinput");
-
-// files は FileList オブジェクトです (NodeList に似ています)。
-files = fileInput.files;
-
-// 私たちのアプリケーションは GIF、PNG、JPEG 画像のみを許可しています。
-allowedFileTypes = ["image/png", "image/jpeg", "image/gif"];
-
-for (i = 0; i < files.length; i++) {
- // file.type が許可されたファイルタイプであるかどうかをテストします。
- if (allowedFileTypes.indexOf(files[i].type) > -1) {
- // マッチしたファイルタイプは、許可されているファイルタイプの一つです。ここで何か処理を行います。
- }
-});
-
-
-仕様
-
-
-
-
- 仕様書 |
- ステータス |
- コメント |
-
-
- {{SpecName('File API', '#dfn-type', 'Blob.type')}} |
- {{Spec2('File API')}} |
- 初期定義 |
-
-
-
-
-ブラウザの互換性
-
-
-
{{Compat("api.Blob.type")}}
-
-
-あわせて参照
-
-
diff --git a/files/ja/web/api/blob/type/index.md b/files/ja/web/api/blob/type/index.md
new file mode 100644
index 00000000000000..3cf38a9086e9ed
--- /dev/null
+++ b/files/ja/web/api/blob/type/index.md
@@ -0,0 +1,67 @@
+---
+title: Blob.type
+slug: Web/API/Blob/type
+tags:
+ - API
+ - Blob
+ - DOM
+ - File
+ - File API
+ - Format
+ - MIME
+ - MIME Type
+ - Property
+ - Reference
+ - Type
+translation_of: Web/API/Blob/type
+---
+{{APIRef("File API")}}
+
+{{domxref("Blob")}} オブジェクトの **`type`** プロパティは、ファイルの {{Glossary("MIME type")}} を返します。
+
+## シンタックス
+
+ var mimetype = blob.type
+
+### 値
+
+ファイルの MIME タイプを含む {{domxref("DOMString")}}、または型が特定できなかった場合は空文字列を指定します。
+
+## 例
+
+この例では、ユーザーにいくつかのファイルを選択してもらい、各ファイルが指定された画像ファイルタイプのセットのいずれかであるかどうかを確認します。
+
+```js
+var i, fileInput, files, allowedFileTypes;
+
+// fileInput は HTMLInputElement です。
+fileInput = document.getElementById("myfileinput");
+
+// files は FileList オブジェクトです (NodeList に似ています)。
+files = fileInput.files;
+
+// 私たちのアプリケーションは GIF、PNG、JPEG 画像のみを許可しています。
+allowedFileTypes = ["image/png", "image/jpeg", "image/gif"];
+
+for (i = 0; i < files.length; i++) {
+ // file.type が許可されたファイルタイプであるかどうかをテストします。
+ if (allowedFileTypes.indexOf(files[i].type) > -1) {
+ // マッチしたファイルタイプは、許可されているファイルタイプの一つです。ここで何か処理を行います。
+ }
+});
+```
+
+## 仕様
+
+| 仕様書 | ステータス | コメント |
+| -------------------------------------------------------------------- | ---------------------------- | -------- |
+| {{SpecName('File API', '#dfn-type', 'Blob.type')}} | {{Spec2('File API')}} | 初期定義 |
+
+## ブラウザの互換性
+
+{{Compat("api.Blob.type")}}
+
+## あわせて参照
+
+- {{domxref("Blob")}}
+- [Web アプリケーションからのファイルの使用](/ja/docs/Web/API/File/Using_files_from_web_applications)
diff --git a/files/ja/web/api/blobevent/blobevent/index.html b/files/ja/web/api/blobevent/blobevent/index.html
deleted file mode 100644
index 644b631e57617a..00000000000000
--- a/files/ja/web/api/blobevent/blobevent/index.html
+++ /dev/null
@@ -1,62 +0,0 @@
----
-title: BlobEvent()
-slug: Web/API/BlobEvent/BlobEvent
-tags:
- - API
- - BlobEvent
- - Constructor
- - DOM
- - DOM Reference
- - Experimental
- - Media Stream Encoding
- - Reference
-translation_of: Web/API/BlobEvent/BlobEvent
----
-{{APIRef("Media Capture and Streams")}}{{seeCompatTable}}
-
-BlobEvent()
コンストラクターは、新たに生成され {{domxref("Blob")}} に関連付けられた {{domxref("BlobEvent")}} オブジェクトを返します。
-
-構文
-
-blobEvent = new BlobEvent({data: aSpecificBlob}[, timecode]);
-
-
-引数
-
-BlobEvent()
コンストラクターは、{{domxref("Event.Event", "Event()")}} からの引数も継承します。
-
-
- data
- - イベントに関連付けられた {{domxref("Blob")}}。
- timecode
{{optional_inline}}
- - blob イベントの初期化に使用される {{domxref("DOMHighResTimeStamp")}}。
-
-
-仕様
-
-
-
-
- 仕様書 |
- 策定状況 |
- 備考 |
-
-
- {{SpecName('MediaStream Recording', '#dom-blobevent-blobevent', 'BlobEvent: BlobEvent')}} |
- {{Spec2('MediaStream Recording')}} |
- 初期定義。 |
-
-
-
-
-ブラウザーの実装状況
-
-
-
-{{Compat("api.BlobEvent.BlobEvent")}}
-
-関連項目
-
-
- - このメソッドが属する {{domxref("BlobEvent")}} インターフェイス。
-
diff --git a/files/ja/web/api/blobevent/blobevent/index.md b/files/ja/web/api/blobevent/blobevent/index.md
new file mode 100644
index 00000000000000..309050755c3f4e
--- /dev/null
+++ b/files/ja/web/api/blobevent/blobevent/index.md
@@ -0,0 +1,44 @@
+---
+title: BlobEvent()
+slug: Web/API/BlobEvent/BlobEvent
+tags:
+ - API
+ - BlobEvent
+ - Constructor
+ - DOM
+ - DOM Reference
+ - Experimental
+ - Media Stream Encoding
+ - Reference
+translation_of: Web/API/BlobEvent/BlobEvent
+---
+{{APIRef("Media Capture and Streams")}}{{seeCompatTable}}
+
+**`BlobEvent()`** コンストラクターは、新たに生成され {{domxref("Blob")}} に関連付けられた {{domxref("BlobEvent")}} オブジェクトを返します。
+
+## 構文
+
+ blobEvent = new BlobEvent({data: aSpecificBlob}[, timecode]);
+
+### 引数
+
+_`BlobEvent()` コンストラクターは、{{domxref("Event.Event", "Event()")}} からの引数も継承します。_
+
+- `data`
+ - : イベントに関連付けられた {{domxref("Blob")}}。
+- `timecode` {{optional_inline}}
+ - : blob イベントの初期化に使用される {{domxref("DOMHighResTimeStamp")}}。
+
+## 仕様
+
+| 仕様書 | 策定状況 | 備考 |
+| ------------------------------------------------------------------------------------------------------------------------ | -------------------------------------------- | ---------- |
+| {{SpecName('MediaStream Recording', '#dom-blobevent-blobevent', 'BlobEvent: BlobEvent')}} | {{Spec2('MediaStream Recording')}} | 初期定義。 |
+
+## ブラウザーの実装状況
+
+{{Compat("api.BlobEvent.BlobEvent")}}
+
+## 関連項目
+
+- このメソッドが属する {{domxref("BlobEvent")}} インターフェイス。
diff --git a/files/ja/web/api/blobevent/data/index.html b/files/ja/web/api/blobevent/data/index.html
deleted file mode 100644
index 867484937b7e62..00000000000000
--- a/files/ja/web/api/blobevent/data/index.html
+++ /dev/null
@@ -1,52 +0,0 @@
----
-title: BlobEvent.data
-slug: Web/API/BlobEvent/data
-tags:
- - API
- - BlobEvent
- - DOM
- - DOM Reference
- - Experimental
- - Media Stream Recording
- - Property
- - Reference
-translation_of: Web/API/BlobEvent/data
----
-{{ apiref("Media Capture and Streams") }}
-
-{{ SeeCompatTable() }}
-
-BlobEvent.data
読み取り専用プロパティは、イベントに関連付けられた {{domxref("Blob")}} を表します。
-
-構文
-
-associatedBlob = BlobEvent.data
-
-仕様
-
-
-
-
- 仕様書 |
- 策定状況 |
- 備考 |
-
-
- {{SpecName('MediaStream Recording', '#dom-blobevent-data', 'BlobEvent.data')}} |
- {{Spec2('MediaStream Recording')}} |
- 初期定義。 |
-
-
-
-
-ブラウザーの実装状況
-
-
-
-{{Compat("api.BlobEvent.data")}}
-
-関連項目
-
-
- - このプロパティが属する {{domxref("BlobEvent")}} インターフェイス。
-
diff --git a/files/ja/web/api/blobevent/data/index.md b/files/ja/web/api/blobevent/data/index.md
new file mode 100644
index 00000000000000..4b3103beb14698
--- /dev/null
+++ b/files/ja/web/api/blobevent/data/index.md
@@ -0,0 +1,37 @@
+---
+title: BlobEvent.data
+slug: Web/API/BlobEvent/data
+tags:
+ - API
+ - BlobEvent
+ - DOM
+ - DOM Reference
+ - Experimental
+ - Media Stream Recording
+ - Property
+ - Reference
+translation_of: Web/API/BlobEvent/data
+---
+{{ apiref("Media Capture and Streams") }}
+
+{{ SeeCompatTable() }}
+
+**`BlobEvent.data`** 読み取り専用プロパティは、イベントに関連付けられた {{domxref("Blob")}} を表します。
+
+## 構文
+
+ associatedBlob = BlobEvent.data
+
+## 仕様
+
+| 仕様書 | 策定状況 | 備考 |
+| -------------------------------------------------------------------------------------------------------- | -------------------------------------------- | ---------- |
+| {{SpecName('MediaStream Recording', '#dom-blobevent-data', 'BlobEvent.data')}} | {{Spec2('MediaStream Recording')}} | 初期定義。 |
+
+## ブラウザーの実装状況
+
+{{Compat("api.BlobEvent.data")}}
+
+## 関連項目
+
+- このプロパティが属する {{domxref("BlobEvent")}} インターフェイス。
diff --git a/files/ja/web/api/blobevent/index.html b/files/ja/web/api/blobevent/index.html
deleted file mode 100644
index 7542b6b92bfa67..00000000000000
--- a/files/ja/web/api/blobevent/index.html
+++ /dev/null
@@ -1,73 +0,0 @@
----
-title: BlobEvent
-slug: Web/API/BlobEvent
-tags:
- - API
- - Audio
- - Blob
- - Interface
- - Media
- - MediaStream Recording
- - MediaStream Recording API
- - Recording Media
- - Reference
- - Video
- - events
-translation_of: Web/API/BlobEvent
----
-{{APIRef("Media Capture and Streams")}}
-
-BlobEvent
インターフェイスは、{{domxref("Blob")}} に関連付けられたイベントを表します。 これらの blob は、一般的にメディアコンテンツと関連付けられますが、必ずしもそうとは限りません。
-
-コンストラクター
-
-
- - {{domxref("BlobEvent.BlobEvent", "BlobEvent()")}}
- - 与えられた引数で
BlobEvent
イベントを生成する。
-
-
-プロパティ
-
-自身の親 {{domxref("Event")}} からのプロパティを継承します。
-
-
- - {{domxref("BlobEvent.data")}} {{readonlyInline}}
- - イベントと関連付けられたデータを表す {{domxref("Blob")}}。 イベントは、特定の {{domxref("Blob")}} で何かが起こることにより、{{domxref("EventTarget")}} 上で発生します。
- - {{domxref("BlobEvent.timecode")}} {{readonlyinline}}
- data
内の最初のチャンクのタイムスタンプと、このレコーダーによって生成された最初の BlobEvent
内の最初のチャンクのタイムスタンプとの差を示す {{domxref("DOMHighResTimeStamp")}}。 最初に生成された BlobEvent
の timecode
はゼロである必要はないことに注意してください。
-
-
-メソッド
-
-固有のメソッドはありません。 自身の親 {{domxref("Event")}} からのメソッドを継承します。
-
-仕様
-
-
-
-
- 仕様書 |
- 策定状況 |
- 備考 |
-
-
- {{SpecName('MediaStream Recording', '#blobevent-section', 'BlobEvent')}} |
- {{Spec2('MediaStream Recording')}} |
- 初期定義。 |
-
-
-
-
-ブラウザーの実装状況
-
-
-
-{{Compat("api.BlobEvent")}}
-
-関連項目
-
-
diff --git a/files/ja/web/api/blobevent/index.md b/files/ja/web/api/blobevent/index.md
new file mode 100644
index 00000000000000..470b66e6f6b2e5
--- /dev/null
+++ b/files/ja/web/api/blobevent/index.md
@@ -0,0 +1,54 @@
+---
+title: BlobEvent
+slug: Web/API/BlobEvent
+tags:
+ - API
+ - Audio
+ - Blob
+ - Interface
+ - Media
+ - MediaStream Recording
+ - MediaStream Recording API
+ - Recording Media
+ - Reference
+ - Video
+ - events
+translation_of: Web/API/BlobEvent
+---
+{{APIRef("Media Capture and Streams")}}
+
+**`BlobEvent`** インターフェイスは、{{domxref("Blob")}} に関連付けられたイベントを表します。 これらの blob は、一般的にメディアコンテンツと関連付けられますが、必ずしもそうとは限りません。
+
+## コンストラクター
+
+- {{domxref("BlobEvent.BlobEvent", "BlobEvent()")}}
+ - : 与えられた引数で `BlobEvent` イベントを生成する。
+
+## プロパティ
+
+_自身の親 {{domxref("Event")}} からのプロパティを継承します。_
+
+- {{domxref("BlobEvent.data")}} {{readonlyInline}}
+ - : イベントと関連付けられたデータを表す {{domxref("Blob")}}。 イベントは、特定の {{domxref("Blob")}} で何かが起こることにより、{{domxref("EventTarget")}} 上で発生します。
+- {{domxref("BlobEvent.timecode")}} {{readonlyinline}}
+ - : `data` 内の最初のチャンクのタイムスタンプと、このレコーダーによって生成された最初の `BlobEvent` 内の最初のチャンクのタイムスタンプとの差を示す {{domxref("DOMHighResTimeStamp")}}。 最初に生成された `BlobEvent` の `timecode` はゼロである必要はないことに注意してください。
+
+## メソッド
+
+固有のメソッドはありません。 _自身の親 {{domxref("Event")}} からのメソッドを継承します。_
+
+## 仕様
+
+| 仕様書 | 策定状況 | 備考 |
+| ------------------------------------------------------------------------------------------------ | -------------------------------------------- | ---------- |
+| {{SpecName('MediaStream Recording', '#blobevent-section', 'BlobEvent')}} | {{Spec2('MediaStream Recording')}} | 初期定義。 |
+
+## ブラウザーの実装状況
+
+{{Compat("api.BlobEvent")}}
+
+## 関連項目
+
+- {{domxref("Event")}} 基本インターフェイス
+- [MediaStream Recording API](/ja/docs/Web/API/MediaStream_Recording_API): メディアのチャンクの準備ができるたびに `BlobEvent` オブジェクトを送信します。
+- [MediaStream Recording API の使用](/ja/docs/Web/API/MediaStream_Recording_API/Using_the_MediaStream_Recording_API)
diff --git a/files/ja/web/api/blobevent/timecode/index.html b/files/ja/web/api/blobevent/timecode/index.html
deleted file mode 100644
index fa0a0a428785b0..00000000000000
--- a/files/ja/web/api/blobevent/timecode/index.html
+++ /dev/null
@@ -1,48 +0,0 @@
----
-title: BlobEvent.timecode
-slug: Web/API/BlobEvent/timecode
-tags:
- - API
- - BlobEvent
- - Media
- - Media Stream Recording
- - Property
- - Reference
-translation_of: Web/API/BlobEvent/timecode
----
-{{SeeCompatTable}}{{APIRef("Media Capture and Streams")}}
-
-{{domxref("BlobEvent")}} インタフェースの timecode
読み取り専用プロパティは、データ内の最初のチャンクのタイムスタンプと、このレコーダによって生成された最初の BlobEvent
内の最初のチャンクのタイムスタンプとの差を示す {{domxref("DOMHighResTimeStamp")}} です。 最初に生成された BlobEvent
の timecode
はゼロである必要はないことに注意してください。
-
-構文
-
-var timecode = BlobEvent.timecode
-
-値
-
-{{domxref("DOMHighResTimeStamp")}}。
-
-仕様
-
-
-
-
- 仕様書 |
- 策定状況 |
- 備考 |
-
-
- {{SpecName('MediaStream Recording','#dom-blobevent-timecode','timecode')}} |
- {{Spec2('MediaStream Recording')}} |
- 初期定義。 |
-
-
-
-
-ブラウザーの実装状況
-
-
-
-
-
{{Compat("api.BlobEvent.timecode")}}
-
diff --git a/files/ja/web/api/blobevent/timecode/index.md b/files/ja/web/api/blobevent/timecode/index.md
new file mode 100644
index 00000000000000..112977b97a2b86
--- /dev/null
+++ b/files/ja/web/api/blobevent/timecode/index.md
@@ -0,0 +1,33 @@
+---
+title: BlobEvent.timecode
+slug: Web/API/BlobEvent/timecode
+tags:
+ - API
+ - BlobEvent
+ - Media
+ - Media Stream Recording
+ - Property
+ - Reference
+translation_of: Web/API/BlobEvent/timecode
+---
+{{SeeCompatTable}}{{APIRef("Media Capture and Streams")}}
+
+{{domxref("BlobEvent")}} インタフェースの **`timecode`** 読み取り専用プロパティは、データ内の最初のチャンクのタイムスタンプと、このレコーダによって生成された最初の `BlobEvent` 内の最初のチャンクのタイムスタンプとの差を示す {{domxref("DOMHighResTimeStamp")}} です。 最初に生成された `BlobEvent` の `timecode` はゼロである必要はないことに注意してください。
+
+## 構文
+
+ var timecode = BlobEvent.timecode
+
+### 値
+
+{{domxref("DOMHighResTimeStamp")}}。
+
+## 仕様
+
+| 仕様書 | 策定状況 | 備考 |
+| ---------------------------------------------------------------------------------------------------- | -------------------------------------------- | ---------- |
+| {{SpecName('MediaStream Recording','#dom-blobevent-timecode','timecode')}} | {{Spec2('MediaStream Recording')}} | 初期定義。 |
+
+## ブラウザーの実装状況
+
+{{Compat("api.BlobEvent.timecode")}}
diff --git a/files/ja/web/api/broadcast_channel_api/index.html b/files/ja/web/api/broadcast_channel_api/index.html
deleted file mode 100644
index ddfe0f7c9c816f..00000000000000
--- a/files/ja/web/api/broadcast_channel_api/index.html
+++ /dev/null
@@ -1,92 +0,0 @@
----
-title: Broadcast Channel API
-slug: Web/API/Broadcast_Channel_API
-tags:
- - API
- - Broadcast Channel API
- - HTML API
- - Overview
- - Reference
-translation_of: Web/API/Broadcast_Channel_API
----
-{{DefaultAPISidebar("Broadcast Channel API")}}
-
-Broadcast Channel API(放送チャンネル API)を使用すると、{{glossary("browsing context", "閲覧コンテキスト")}}(つまり、ウィンドウ、タブ、フレーム、iframe)間で、同じ{{glossary("origin","オリジン")}}(通常は同じサイトのページ)を使用して簡単に通信できます。
-
-{{AvailableInWorkers}}
-
-放送チャンネルは、名前が付けられ、特定のオリジンに結びつけられています。
-
-基になるチャンネルをリッスンしている {{domxref("BroadcastChannel")}} オブジェクトを作成することで、投稿されたメッセージを受信できます。 興味深い点は、通信したい iframe やワーカーへの参照を維持する必要がもうないということです。 それらは単に {{domxref("BroadcastChannel")}} を構築することによって特定のチャンネルを「購読する(subscribe)」ことができ、それらすべての間で全二重(双方向)通信を行うことができます。
-
-
-
-放送チャンネルのインターフェイス
-
-チャンネルの作成または参加
-
-BroadcastChannel
インターフェイスは非常に単純です。 クライアントは {{domxref("BroadcastChannel")}} オブジェクトを作成することによって特定の放送チャンネルに参加します。 {{domxref("BroadcastChannel.BroadcastChannel","コンストラクタ")}}は、それを識別するために使用する単一のパラメーターである、チャネルの名前を取ります。 放送チャンネルに最初に接続した場合は、基になるリソースが作成されます。
-
-// 放送チャンネルへの接続
-var bc = new BroadcastChannel('test_channel');
-
-
-メッセージの送信
-
-メッセージを投稿するのは簡単です。 BroadcastChannel
オブジェクトの {{domxref("BroadcastChannel.postMessage", "postMessage()")}} メソッドを呼び出すだけで十分です。 このメソッドは任意のオブジェクトを引数として取ります。 非常に単純な例は、次のように {{domxref("DOMString")}} テキストメッセージです。
-
-// 非常に単純なメッセージの送信例
-bc.postMessage('This is a test message.');
-
-
-{{domxref("DOMString")}} だけでなく、あらゆる種類のオブジェクトを送信できます。 API は意味論をメッセージに関連付けないため、どのような種類のメッセージを想定し、それをどう処理するかを知るのは、チャネルの参加者次第です。
-
-メッセージの受信
-
-メッセージが投稿されると、このチャンネルに接続されている各 {{domxref("BroadcastChannel")}} オブジェクトに {{event("message")}} イベントが送出されます。 デフォルトでは何もしませんが、{{domxref("BroadcastChannel.onmessage", "onmessage")}} イベントハンドラを使用して新しい関数を実装できます。
-
-// イベントをコンソールに記録するだけの
-// 単純なイベントハンドラの例
-bc.onmessage = function (ev) { console.log(ev); }
-
-
-チャンネルの切断
-
-チャネルを去るには、オブジェクトの {{domxref("BroadcastChannel.close", "close()")}} メソッドを呼び出す必要があります。 これにより、オブジェクトと基になるチャネル間のリンクを切断し、ガベージコレクションをすることができます。
-
-// チャンネルの切断
-bc.close()
-
-
-結び
-
-Broadcast Channel API は非常に単純な API であり、自己完結型のインターフェイスによってコンテキスト間通信が可能です。 ユーザーがアカウントにログインしたときなど、同じサイトオリジン環境内の他のタブでユーザーの操作を検出するために使用できます。 メッセージングプロトコルは定義されておらず、さまざまなコンテキストのさまざまなドキュメントがそれ自体を実装する必要があります。 ネゴシエーションも仕様からの要件もありません。
-
-仕様
-
-
-
-
- 仕様 |
- 状態 |
- コメント |
-
-
- {{SpecName('HTML WHATWG', "comms.html#broadcasting-to-other-browsing-contexts", "The Broadcast Channel API")}} |
- {{Spec2('HTML WHATWG')}} |
- 初期定義 |
-
-
-
-
-ブラウザーの互換性
-
-
-
-{{Compat("api.BroadcastChannel")}}
-
-関連情報
-
-
- - {{domxref("BroadcastChannel")}}: これを実装するインターフェイス。
-
diff --git a/files/ja/web/api/broadcast_channel_api/index.md b/files/ja/web/api/broadcast_channel_api/index.md
new file mode 100644
index 00000000000000..90697311dfc185
--- /dev/null
+++ b/files/ja/web/api/broadcast_channel_api/index.md
@@ -0,0 +1,81 @@
+---
+title: Broadcast Channel API
+slug: Web/API/Broadcast_Channel_API
+tags:
+ - API
+ - Broadcast Channel API
+ - HTML API
+ - Overview
+ - Reference
+translation_of: Web/API/Broadcast_Channel_API
+---
+{{DefaultAPISidebar("Broadcast Channel API")}}
+
+**Broadcast Channel API**(放送チャンネル API)を使用すると、{{glossary("browsing context", "閲覧コンテキスト")}}(つまり、_ウィンドウ_、_タブ_、_フレーム_、_iframe_)間で、同じ{{glossary("origin","オリジン")}}(通常は同じサイトのページ)を使用して簡単に通信できます。
+
+{{AvailableInWorkers}}
+
+放送チャンネルは、名前が付けられ、特定のオリジンに結びつけられています。
+
+基になるチャンネルをリッスンしている {{domxref("BroadcastChannel")}} オブジェクトを作成することで、投稿されたメッセージを受信できます。 興味深い点は、通信したい iframe やワーカーへの参照を維持する必要がもうないということです。 それらは単に {{domxref("BroadcastChannel")}} を構築することによって特定のチャンネルを「購読する(subscribe)」ことができ、それらすべての間で全二重(双方向)通信を行うことができます。
+
+![Broadcast Channel API の原理](https://mdn.mozillademos.org/files/9945/BroadcastChannel.png)
+
+## 放送チャンネルのインターフェイス
+
+### チャンネルの作成または参加
+
+`BroadcastChannel` インターフェイスは非常に単純です。 クライアントは {{domxref("BroadcastChannel")}} オブジェクトを作成することによって特定の放送チャンネルに参加します。 {{domxref("BroadcastChannel.BroadcastChannel","コンストラクタ")}}は、それを識別するために使用する単一のパラメーターである、チャネルの*名前*を取ります。 放送チャンネルに最初に接続した場合は、基になるリソースが作成されます。
+
+```js
+// 放送チャンネルへの接続
+var bc = new BroadcastChannel('test_channel');
+```
+
+### メッセージの送信
+
+メッセージを投稿するのは簡単です。 `BroadcastChannel` オブジェクトの {{domxref("BroadcastChannel.postMessage", "postMessage()")}} メソッドを呼び出すだけで十分です。 このメソッドは任意のオブジェクトを引数として取ります。 非常に単純な例は、次のように {{domxref("DOMString")}} テキストメッセージです。
+
+```js
+// 非常に単純なメッセージの送信例
+bc.postMessage('This is a test message.');
+```
+
+{{domxref("DOMString")}} だけでなく、あらゆる種類のオブジェクトを送信できます。 API は意味論をメッセージに関連付けないため、どのような種類のメッセージを想定し、それをどう処理するかを知るのは、チャネルの参加者次第です。
+
+### メッセージの受信
+
+メッセージが投稿されると、このチャンネルに接続されている各 {{domxref("BroadcastChannel")}} オブジェクトに {{event("message")}} イベントが送出されます。 デフォルトでは何もしませんが、{{domxref("BroadcastChannel.onmessage", "onmessage")}} イベントハンドラを使用して新しい関数を実装できます。
+
+```js
+// イベントをコンソールに記録するだけの
+// 単純なイベントハンドラの例
+bc.onmessage = function (ev) { console.log(ev); }
+```
+
+### チャンネルの切断
+
+チャネルを去るには、オブジェクトの {{domxref("BroadcastChannel.close", "close()")}} メソッドを呼び出す必要があります。 これにより、オブジェクトと基になるチャネル間のリンクを切断し、ガベージコレクションをすることができます。
+
+```js
+// チャンネルの切断
+bc.close()
+```
+
+## 結び
+
+Broadcast Channel API は非常に単純な API であり、自己完結型のインターフェイスによってコンテキスト間通信が可能です。 ユーザーがアカウントにログインしたときなど、同じサイトオリジン環境内の他のタブでユーザーの操作を検出するために使用できます。 メッセージングプロトコルは定義されておらず、さまざまなコンテキストのさまざまなドキュメントがそれ自体を実装する必要があります。 ネゴシエーションも仕様からの要件もありません。
+
+## 仕様
+
+| 仕様 | 状態 | コメント |
+| ---------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------- | -------- |
+| {{SpecName('HTML WHATWG', "comms.html#broadcasting-to-other-browsing-contexts", "The Broadcast Channel API")}} | {{Spec2('HTML WHATWG')}} | 初期定義 |
+
+## ブラウザーの互換性
+
+{{Compat("api.BroadcastChannel")}}
+
+## 関連情報
+
+- {{domxref("BroadcastChannel")}}: これを実装するインターフェイス。
diff --git a/files/ja/web/api/broadcastchannel/broadcastchannel/index.html b/files/ja/web/api/broadcastchannel/broadcastchannel/index.html
deleted file mode 100644
index 7d38827c8eb661..00000000000000
--- a/files/ja/web/api/broadcastchannel/broadcastchannel/index.html
+++ /dev/null
@@ -1,66 +0,0 @@
----
-title: BroadcastChannel()
-slug: Web/API/BroadcastChannel/BroadcastChannel
-tags:
- - API
- - Broadcast Channel API
- - BroadcastChannel
- - Constructor
- - Experimental
- - HTML API
- - Reference
-translation_of: Web/API/BroadcastChannel/BroadcastChannel
----
-{{APIRef("BroadCastChannel API")}}
-
-BroadcastChannel()
コンストラクタは新しい {{domxref("BroadcastChannel")}} を作成し、それを基礎となるチャネルに接続します。
-
-{{AvailableInWorkers}}
-
-構文
-
- channel = new BroadcastChannel(channel);
-
-値
-
-
- - channel
- - チャネルの名前を表す {{domxref("DOMString")}} です。 同じ{{glossary("origin","オリジン")}}を持つすべての{{glossary("browsing context", "閲覧コンテキスト")}}に対して、この名前を持つ単一のチャンネルがあります。
-
-
-例
-
-// "internal_notification" チャンネルをリッスンする新しいチャンネルを作成します。
-
-var bc = new BroadcastChannel('internal_notification');
-bc.postMessage('New listening connected!');
-
-
-仕様
-
-
-
-
- 仕様 |
- 状態 |
- コメント |
-
-
- {{SpecName('HTML WHATWG', "comms.html#dom-broadcastchannel", "BroadcastChannel()")}} |
- {{Spec2('HTML WHATWG')}} |
- 初期定義 |
-
-
-
-
-ブラウザーの互換性
-
-
-
-{{Compat("api.BroadcastChannel.BroadcastChannel")}}
-
-関連情報
-
-
- - {{domxref("BroadcastChannel")}}: これが属するインターフェース。
-
diff --git a/files/ja/web/api/broadcastchannel/broadcastchannel/index.md b/files/ja/web/api/broadcastchannel/broadcastchannel/index.md
new file mode 100644
index 00000000000000..f4f7083b94ee04
--- /dev/null
+++ b/files/ja/web/api/broadcastchannel/broadcastchannel/index.md
@@ -0,0 +1,50 @@
+---
+title: BroadcastChannel()
+slug: Web/API/BroadcastChannel/BroadcastChannel
+tags:
+ - API
+ - Broadcast Channel API
+ - BroadcastChannel
+ - Constructor
+ - Experimental
+ - HTML API
+ - Reference
+translation_of: Web/API/BroadcastChannel/BroadcastChannel
+---
+{{APIRef("BroadCastChannel API")}}
+
+**`BroadcastChannel()`** コンストラクタは新しい {{domxref("BroadcastChannel")}} を作成し、それを基礎となるチャネルに接続します。
+
+{{AvailableInWorkers}}
+
+## 構文
+
+ channel = new BroadcastChannel(channel);
+
+### 値
+
+- _channel_
+ - : チャネルの名前を表す {{domxref("DOMString")}} です。 同じ{{glossary("origin","オリジン")}}を持つすべての{{glossary("browsing context", "閲覧コンテキスト")}}に対して、この名前を持つ単一のチャンネルがあります。
+
+## 例
+
+```js
+// "internal_notification" チャンネルをリッスンする新しいチャンネルを作成します。
+
+var bc = new BroadcastChannel('internal_notification');
+bc.postMessage('New listening connected!');
+```
+
+## 仕様
+
+| 仕様 | 状態 | コメント |
+| ---------------------------------------------------------------------------------------------------------------- | -------------------------------- | -------- |
+| {{SpecName('HTML WHATWG', "comms.html#dom-broadcastchannel", "BroadcastChannel()")}} | {{Spec2('HTML WHATWG')}} | 初期定義 |
+
+## ブラウザーの互換性
+
+{{Compat("api.BroadcastChannel.BroadcastChannel")}}
+
+## 関連情報
+
+- {{domxref("BroadcastChannel")}}: これが属するインターフェース。
diff --git a/files/ja/web/api/broadcastchannel/close/index.html b/files/ja/web/api/broadcastchannel/close/index.html
deleted file mode 100644
index d573ea251b6140..00000000000000
--- a/files/ja/web/api/broadcastchannel/close/index.html
+++ /dev/null
@@ -1,63 +0,0 @@
----
-title: BroadcastChannel.close()
-slug: Web/API/BroadcastChannel/close
-tags:
- - API
- - Broadcast Channel API
- - BroadcastChannel
- - Experimental
- - HTML API
- - Method
- - Reference
-translation_of: Web/API/BroadcastChannel/close
----
-{{APIRef("BroadCastChannel API")}}
-
-BroadcastChannel.close()
は、基礎となるチャネルへの接続を終了し、オブジェクトをガベージコレクションできるようにします。 このチャンネルがもう必要ないことをブラウザーが知る他の方法はないので、これは実行するのに必要なステップです。
-
-{{AvailableInWorkers}}
-
-構文
-
-var str = channel
.close();
-
-
-例
-
-// チャンネルに接続
-var bc = new BroadcastChannel('test_channel');
-
-// その他の操作(postMessage など)
-
-// 終了したら、チャンネルから切断します
-bc.close();
-
-
-仕様
-
-
-
-
- 仕様 |
- 状態 |
- コメント |
-
-
- {{SpecName('HTML WHATWG', "comms.html#dom-broadcastchannel-close", "BroadcastChannel.close()")}} |
- {{Spec2('HTML WHATWG')}} |
- 初期定義 |
-
-
-
-
-ブラウザーの互換性
-
-
-
-{{Compat("api.BroadcastChannel.close")}}
-
-関連情報
-
-
- - {{domxref("BroadcastChannel")}}: これが属するインターフェース。
-
diff --git a/files/ja/web/api/broadcastchannel/close/index.md b/files/ja/web/api/broadcastchannel/close/index.md
new file mode 100644
index 00000000000000..0f801b46864d70
--- /dev/null
+++ b/files/ja/web/api/broadcastchannel/close/index.md
@@ -0,0 +1,48 @@
+---
+title: BroadcastChannel.close()
+slug: Web/API/BroadcastChannel/close
+tags:
+ - API
+ - Broadcast Channel API
+ - BroadcastChannel
+ - Experimental
+ - HTML API
+ - Method
+ - Reference
+translation_of: Web/API/BroadcastChannel/close
+---
+{{APIRef("BroadCastChannel API")}}
+
+**`BroadcastChannel.close()`** は、基礎となるチャネルへの接続を終了し、オブジェクトをガベージコレクションできるようにします。 このチャンネルがもう必要ないことをブラウザーが知る他の方法はないので、これは実行するのに必要なステップです。
+
+{{AvailableInWorkers}}
+
+## 構文
+
+ var str = channel.close();
+
+## 例
+
+```js
+// チャンネルに接続
+var bc = new BroadcastChannel('test_channel');
+
+// その他の操作(postMessage など)
+
+// 終了したら、チャンネルから切断します
+bc.close();
+```
+
+## 仕様
+
+| 仕様 | 状態 | コメント |
+| -------------------------------------------------------------------------------------------------------------------------------- | -------------------------------- | -------- |
+| {{SpecName('HTML WHATWG', "comms.html#dom-broadcastchannel-close", "BroadcastChannel.close()")}} | {{Spec2('HTML WHATWG')}} | 初期定義 |
+
+## ブラウザーの互換性
+
+{{Compat("api.BroadcastChannel.close")}}
+
+## 関連情報
+
+- {{domxref("BroadcastChannel")}}: これが属するインターフェース。
diff --git a/files/ja/web/api/broadcastchannel/index.html b/files/ja/web/api/broadcastchannel/index.html
deleted file mode 100644
index e42d468578ade8..00000000000000
--- a/files/ja/web/api/broadcastchannel/index.html
+++ /dev/null
@@ -1,92 +0,0 @@
----
-title: BroadcastChannel
-slug: Web/API/BroadcastChannel
-tags:
- - API
- - Broadcast Channel API
- - Experimental
- - HTML API
- - Interface
- - Reference
-translation_of: Web/API/BroadcastChannel
----
-{{APIRef("Broadcast Channel API")}}
-
-BroadcastChannel
インターフェイスは、特定の{{glossary("origin","オリジン")}}の{{glossary("browsing context","閲覧コンテキスト")}}が購読できる名前付きチャネルを表します。 それは、同じオリジンの異なるドキュメント間(異なるウィンドウ、タブ、フレーム、iframe)の通信を可能にします。 メッセージは、チャンネルをリッスンしているすべての BroadcastChannel
オブジェクトで発生する {{event("message")}} イベントを介して放送されます。
-
-{{AvailableInWorkers}}
-
-コンストラクタ
-
-
- - {{domxref("BroadcastChannel.BroadcastChannel", "BroadcastChannel()")}}
- - 名前付きチャンネルにリンクするオブジェクトを作成します。
-
-
-プロパティ
-
-このインターフェイスは、その親である {{domxref("EventTarget")}} からもプロパティを継承します。
-
-
- - {{domxref("BroadcastChannel.name")}}
- - チャネルの名前である {{domxref("DOMString")}} を返します。
- -
-
イベントハンドラ
-
- - {{domxref("BroadcastChannel.onmessage")}}
- - このオブジェクトで {{event("message")}} イベントが発生したときに実行する関数を指定する {{event("Event_handlers", "event handler")}} プロパティ。
- - {{domxref("BroadcastChannel.onmessageerror")}}
- - {{event("Event_handlers", "event handler")}} は、{{domxref("MessageError")}} 型の {{domxref("MessageEvent")}} が発生したとき、つまり逆シリアル化できないメッセージを受け取ったときに呼び出されます。
-
-
-メソッド
-
-このインターフェイスは、その親である {{domxref("EventTarget")}} からもメソッドを継承しています。
-
-
- - {{domxref("BroadcastChannel.postMessage()")}}
- - 同じチャンネルをリッスンしている各 BroadcastChannel オブジェクトに、任意の種類のオブジェクトのメッセージを送信します。
- - {{domxref("BroadcastChannel.close()")}}
- - チャネルオブジェクトを閉じます。 これは、新しいメッセージを取得しないことを示し、最終的にガベージコレクションされることを許可します。
-
-
-イベント
-
-
- - {{domxref("BroadcastChannel.message_event","message")}}
- - メッセージがチャネルに到着したときに発生します。
- {{domxref("BroadcastChannel.onmessage","onmessage")}} プロパティからも利用できます。
- - {{domxref("BroadcastChannel.messageerror_event","messageerror")}}
- - 逆シリアル化できないメッセージが到着したときに発生します。
- {{domxref("BroadcastChannel.onmessageerror","onmessageerror")}} プロパティからも利用できます。
-
-
-仕様
-
-
-
-
- 仕様 |
- 状態 |
- コメント |
-
-
- {{SpecName('HTML WHATWG', "comms.html#broadcastchannel", "BroadcastChannel")}} |
- {{Spec2('HTML WHATWG')}} |
- 初期定義 |
-
-
-
-
-ブラウザーの互換性
-
-
-
-{{Compat("api.BroadcastChannel")}}
-
-関連情報
-
-
diff --git a/files/ja/web/api/broadcastchannel/index.md b/files/ja/web/api/broadcastchannel/index.md
new file mode 100644
index 00000000000000..7585738f3fd673
--- /dev/null
+++ b/files/ja/web/api/broadcastchannel/index.md
@@ -0,0 +1,70 @@
+---
+title: BroadcastChannel
+slug: Web/API/BroadcastChannel
+tags:
+ - API
+ - Broadcast Channel API
+ - Experimental
+ - HTML API
+ - Interface
+ - Reference
+translation_of: Web/API/BroadcastChannel
+---
+{{APIRef("Broadcast Channel API")}}
+
+**`BroadcastChannel`** インターフェイスは、特定の{{glossary("origin","オリジン")}}の{{glossary("browsing context","閲覧コンテキスト")}}が購読できる名前付きチャネルを表します。 それは、同じオリジンの異なるドキュメント間(異なるウィンドウ、タブ、フレーム、iframe)の通信を可能にします。 メッセージは、チャンネルをリッスンしているすべての `BroadcastChannel` オブジェクトで発生する {{event("message")}} イベントを介して放送されます。
+
+{{AvailableInWorkers}}
+
+## コンストラクタ
+
+- {{domxref("BroadcastChannel.BroadcastChannel", "BroadcastChannel()")}}
+ - : 名前付きチャンネルにリンクするオブジェクトを作成します。
+
+## プロパティ
+
+_このインターフェイスは、その親である {{domxref("EventTarget")}} からもプロパティを継承します。_
+
+- {{domxref("BroadcastChannel.name")}}
+ - : チャネルの名前である {{domxref("DOMString")}} を返します。
+- ### イベントハンドラ
+
+ {{domxref("BroadcastChannel.onmessage")}}
+
+ - : このオブジェクトで {{event("message")}} イベントが発生したときに実行する関数を指定する {{event("Event_handlers", "event handler")}} プロパティ。
+
+- {{domxref("BroadcastChannel.onmessageerror")}}
+ - : {{event("Event_handlers", "event handler")}} は、{{domxref("MessageError")}} 型の {{domxref("MessageEvent")}} が発生したとき、つまり逆シリアル化できないメッセージを受け取ったときに呼び出されます。
+
+## メソッド
+
+_このインターフェイスは、その親である {{domxref("EventTarget")}} からもメソッドを継承しています。_
+
+- {{domxref("BroadcastChannel.postMessage()")}}
+ - : 同じチャンネルをリッスンしている各 BroadcastChannel オブジェクトに、任意の種類のオブジェクトのメッセージを送信します。
+- {{domxref("BroadcastChannel.close()")}}
+ - : チャネルオブジェクトを閉じます。 これは、新しいメッセージを取得しないことを示し、最終的にガベージコレクションされることを許可します。
+
+## イベント
+
+- {{domxref("BroadcastChannel.message_event","message")}}
+ - : メッセージがチャネルに到着したときに発生します。
+ {{domxref("BroadcastChannel.onmessage","onmessage")}} プロパティからも利用できます。
+- {{domxref("BroadcastChannel.messageerror_event","messageerror")}}
+ - : 逆シリアル化できないメッセージが到着したときに発生します。
+ {{domxref("BroadcastChannel.onmessageerror","onmessageerror")}} プロパティからも利用できます。
+
+## 仕様
+
+| 仕様 | 状態 | コメント |
+| -------------------------------------------------------------------------------------------------------- | -------------------------------- | -------- |
+| {{SpecName('HTML WHATWG', "comms.html#broadcastchannel", "BroadcastChannel")}} | {{Spec2('HTML WHATWG')}} | 初期定義 |
+
+## ブラウザーの互換性
+
+{{Compat("api.BroadcastChannel")}}
+
+## 関連情報
+
+- ブラウザコンテキスト間でやり取りするもう 1 つの、よりヘビー級の方法: {{domxref("ServiceWorker")}}.
+- [Broadcast Channel API の概要](/ja/docs/Web/API/Broadcast_Channel_API)
diff --git a/files/ja/web/api/broadcastchannel/message_event/index.html b/files/ja/web/api/broadcastchannel/message_event/index.html
deleted file mode 100644
index 4b473bf70b36cb..00000000000000
--- a/files/ja/web/api/broadcastchannel/message_event/index.html
+++ /dev/null
@@ -1,171 +0,0 @@
----
-title: 'BroadcastChannel: message イベント'
-slug: Web/API/BroadcastChannel/message_event
-tags:
- - Communication
- - Event
- - EventSource
- - Reference
- - events
- - message
- - messaging
-translation_of: Web/API/BroadcastChannel/message_event
----
-{{APIRef}}
-
-message
イベントは、メッセージがそのチャネルに到着したときに {{domxref('BroadcastChannel')}} オブジェクトに対して発生します。
-
-
-
-
- バブリング |
- なし |
-
-
- キャンセル |
- 不可 |
-
-
- インターフェイス |
- {{domxref("MessageEvent")}} |
-
-
- イベントハンドラプロパティ |
- {{domxref("BroadcastChannel.onmessage","onmessage")}} |
-
-
-
-
-例
-
-実例
-
-この例では、ユーザーがボタンをクリックしたときに {{htmlelement("textarea")}} の内容を放送する "Sender" の {{htmlelement("iframe")}} と、放送メッセージを受信し、その結果を {{htmlelement("div")}} 要素に書き込む2つの "Receiver" の <iframe>
があります。
-
-Sender
-
-
-
<h1>Sender</h1>
-<label for="message">Type a message to broadcast:</label><br/>
-<textarea id="message" name="message" rows="1" cols="40">Hello</textarea>
-<button id="broadcast-message" type="button">Broadcast message</button>
-
-
body {
- border: 1px solid black;
- padding: .5rem;
- height: 150px;
- font-family: "Fira Sans", sans-serif;
-}
-
-h1 {
- font: 1.6em "Fira Sans", sans-serif;
- margin-bottom: 1rem;
-}
-
-textarea {
- padding: .2rem;
-}
-
-label, br {
- margin: .5rem 0;
-}
-
-button {
- vertical-align: top;
- height: 1.5rem;
-}
-
-
-const channel = new BroadcastChannel('example-channel');
-const messageControl = document.querySelector('#message');
-const broadcastMessageButton = document.querySelector('#broadcast-message');
-
-broadcastMessageButton.addEventListener('click', () => {
- channel.postMessage(messageControl.value);
-})
-
-
-Receiver 1
-
-
-
<h1>Receiver 1</h1>
-<div id="received"></div>
-
-
body {
- border: 1px solid black;
- padding: .5rem;
- height: 100px;
- font-family: "Fira Sans", sans-serif;
-}
-
-h1 {
- font: 1.6em "Fira Sans",
- sans-serif; margin-bottom: 1rem;
-}
-
-
-
-const channel = new BroadcastChannel('example-channel');
-channel.addEventListener('message', (event) => {
- received.textContent = event.data;
-});
-
-Receiver 2
-
-
-
<h1>Receiver 2</h1>
-<div id="received"></div>
-
-
body {
- border: 1px solid black;
- padding: .5rem;
- height: 100px;
- font-family: "Fira Sans", sans-serif;
-}
-
-h1 {
- font: 1.6em "Fira Sans", sans-serif;
- margin-bottom: 1rem;
-}
-
-
-
-const channel = new BroadcastChannel('example-channel');
-channel.addEventListener('message', (event) => {
- received.textContent = event.data;
-});
-
-結果
-
-{{ EmbedLiveSample('Sender', '100%', '170px','' ,'' , 'dummy') }}
-
-{{ EmbedLiveSample('Receiver_1', '100%', '150px','' ,'' , 'dummy') }}
-
-{{ EmbedLiveSample('Receiver_2', '100%', '150px','' ,'' , 'dummy') }}
-
-仕様
-
-
-
-
- 仕様 |
- 状態 |
-
-
- {{SpecName('HTML WHATWG', 'indices.html#event-message')}} |
- {{Spec2('HTML WHATWG')}} |
-
-
-
-
-ブラウザーの互換性
-
-
-
-{{Compat("api.BroadcastChannel.message_event")}}
-
-関連情報
-
-
- - 関連イベント: {{domxref("BroadcastChannel.messageerror_event","messageerror")}}。
-
diff --git a/files/ja/web/api/broadcastchannel/message_event/index.md b/files/ja/web/api/broadcastchannel/message_event/index.md
new file mode 100644
index 00000000000000..be418881dd0004
--- /dev/null
+++ b/files/ja/web/api/broadcastchannel/message_event/index.md
@@ -0,0 +1,152 @@
+---
+title: 'BroadcastChannel: message イベント'
+slug: Web/API/BroadcastChannel/message_event
+tags:
+ - Communication
+ - Event
+ - EventSource
+ - Reference
+ - events
+ - message
+ - messaging
+translation_of: Web/API/BroadcastChannel/message_event
+---
+{{APIRef}}
+
+`message` イベントは、メッセージがそのチャネルに到着したときに {{domxref('BroadcastChannel')}} オブジェクトに対して発生します。
+
+| バブリング | なし |
+| -------------------------- | ------------------------------------------------------------------------ |
+| キャンセル | 不可 |
+| インターフェイス | {{domxref("MessageEvent")}} |
+| イベントハンドラプロパティ | {{domxref("BroadcastChannel.onmessage","onmessage")}} |
+
+## 例
+
+### 実例
+
+この例では、ユーザーがボタンをクリックしたときに {{htmlelement("textarea")}} の内容を放送する "Sender" の {{htmlelement("iframe")}} と、放送メッセージを受信し、その結果を {{htmlelement("div")}} 要素に書き込む 2 つの "Receiver" の `