Safariのバージョン11への最後の更新以降、一部のビデオが機能しなくなりました。最悪の場合、5回に1回のように、機能することがあります。その理由は、Vimeo Player APIを統合したJSスクリプトにあると思いましたが、Vimeoの埋め込みリンクでさえまったく機能しないことになります。
そのため、Safari 11で埋め込みビデオを開くと、ビデオは起動せず、完全にブロックされます。開くと表示されます。つまり https://player.vimeo.com/video/XXXXXXXX?autoplay=1
コンソールログでは、次のようなものを取得できます。
Unhandled Promise Rejection: NotAllowedError (DOM Exception 35): The request is not allowed by the user agent or the platform in the current context, possibly because the user denied permission.
background
URLパラメータをiframesrc
に追加できます。
<iframe src="https://player.vimeo.com/video/XXXXXXXX?autoplay=1&background=1>
ビデオにサウンドがある場合は、サウンドトラックをまったく使用せずにビデオを再度エクスポートすることもできます。おそらくbackground
パラメータはまったく必要ありません。
キャッチは、Safari 11がサウンドを含んでいる場合、すべてのビデオの自動再生をブロックしていることです。
私の場合のように、ビデオにサウンドレベルがない場合でも、ボリュームのないサウンドでエクスポートされます。アドレスバーにsovolumeアイコンが表示されます。
iOSのサポート:iOS 10以降では、ビデオの自動再生がサポートされていますが、タグにplaysinline属性が必要です。
サファリはすべてのビデオの自動再生を許可していないためです。 mousemove
イベントリスナーを追加できます。マウスが動くと、ビデオの再生が始まります。次に、このイベントを削除する必要があります。