回答編集履歴
3
SPAなら可能かもしれないことを追記
answer
CHANGED
@@ -21,4 +21,17 @@
|
|
21
21
|
要素にクリックイベントを付与し、その要素の自動クリックの際もブロックされます。
|
22
22
|
だからといって、`body`要素のオンマウスで再生しようとしても、それもブロックされております。
|
23
23
|
|
24
|
-
こればかりは、もう、泣き寝入りして、ユーザーに何かをクリックしてもらうかなんかするしかありません。
|
24
|
+
こればかりは、もう、泣き寝入りして、ユーザーに何かをクリックしてもらうかなんかするしかありません。
|
25
|
+
|
26
|
+
# SPA(シングルページアプリケーション)を使えばなんとかなるかもしれない
|
27
|
+
では、なぜYouTubeを始めとする、多くの動画サイトが自動再生を現代でも可能としているか。
|
28
|
+
ソースを細かく見てみましたが、
|
29
|
+
独自フレームワークによる、SPAで実装している可能性があります。
|
30
|
+
SPAがなんなのかは、説明すると長くなるので割愛しますが、
|
31
|
+
簡単に言うと、**そのページに止まりながら、複数ページへ遷移している**、ように見せるものです。
|
32
|
+
(実際に多くのフレームワークは閲覧履歴をJSによって挟んだりしている)
|
33
|
+
つまり、動画のサムネイルをクリックして**ページ遷移している**ように見えるだけで、
|
34
|
+
中のDOMをコントロールしているだけで、根本的には**ページ遷移はしていない**ので、
|
35
|
+
**ユーザーのクリック動作を挟んでいる**と認識させ、自動再生を実現している可能性があります。
|
36
|
+
|
37
|
+
逆を返せば、通常の遷移で、HTML要素のみで自動再生を行うのは、やはり**不可能**でしょう。
|
2
引用文追加
answer
CHANGED
@@ -7,6 +7,9 @@
|
|
7
7
|
## Webポリシーに反するため
|
8
8
|
[メディアおよびウェブオーディオ API の自動再生ガイド - Web メディア技術 | MDN](https://developer.mozilla.org/ja/docs/Web/Media/Autoplay_guide)
|
9
9
|
|
10
|
+
> **自動再生と自動再生のブロック**
|
11
|
+
用語「自動再生(autoplay)」は、ユーザーが再生の開始を明確に要求しなくても音声の再生を開始させる機能を意味します。 これには、メディアの自動再生のための HTML 属性の使用と、ユーザー入力を処理するコンテキストの外で再生を開始するための JavaScript コードのユーザーの両方が含まれます。
|
12
|
+
|
10
13
|
> ユーザーの観点からは、警告なしに自発的にノイズを発し始めるウェブページまたはアプリは、耳障り、不便、または気まずいものになる可能性があります。 そのため、ブラウザーでは通常、特定の状況下でのみ自動再生が正常に行われるようにすることしかできません。
|
11
14
|
|
12
15
|
とある通りです。
|
1
ポリシーの引用文の変更
answer
CHANGED
@@ -4,10 +4,10 @@
|
|
4
4
|
**現状では不可能**になります。
|
5
5
|
|
6
6
|
# 不可能な理由
|
7
|
-
## Web
|
7
|
+
## Webポリシーに反するため
|
8
8
|
[メディアおよびウェブオーディオ API の自動再生ガイド - Web メディア技術 | MDN](https://developer.mozilla.org/ja/docs/Web/Media/Autoplay_guide)
|
9
9
|
|
10
|
-
>
|
10
|
+
> ユーザーの観点からは、警告なしに自発的にノイズを発し始めるウェブページまたはアプリは、耳障り、不便、または気まずいものになる可能性があります。 そのため、ブラウザーでは通常、特定の状況下でのみ自動再生が正常に行われるようにすることしかできません。
|
11
11
|
|
12
12
|
とある通りです。
|
13
13
|
Chromeなどのモダンブラウザは、これに準拠していると思われるため、
|