HTMLにビデオを挿入してすべてのブラウザと互換性を持たせる方法

HTMLにビデオを挿入してすべてのブラウザと互換性を持たせる方法
HTML にビデオを挿入するために最もよく使用される方法は 2 つあります。1 つは古い <object></object> タグで、もう 1 つは HTML5 の <video></video> タグです。

前者は互換性は申し分ないですが、使い勝手はあまり良くありません。後者は使い勝手はとても良いですが、互換性が問題です。

後者は互換性の問題が多いですが、使い勝手が非常に良く、Web デザインの今後の発展傾向にも合致しています。そのため、後者をビデオ挿入の主な方法として使用します。前者は互換性の問題があるため、補助的な方法として使用されます。

次に例を示します。

コードをコピー
コードは次のとおりです。

<ビデオ幅="602px" 高さ="345px" コントロール="コントロール">
<source src="public/video/test.mp4" type="video/mp4"></source>
<source src="public/video/test.ogg" type="video/ogg"></source>
お使いのブラウザはビデオタグをサポートしていません
</ビデオ>

現在、ビデオ要素は次の 3 つのビデオ形式をサポートしています。
フォーマット IE Firefox Opera Chrome Safari
オッグ いいえ 3.5+ 10.5+ 5.0+ いいえ
MPEG 4 9.0+ いいえ いいえ 5.0+ 3.0+
WebM いいえ 4.0+ 10.6+ 6.0+ いいえ

Ogg = Theora ビデオ コーデックと Vorbis オーディオ コーデックを使用した Ogg ファイル

MPEG4 = H.264 ビデオ エンコーディングと AAC オーディオ エンコーディングを使用した MPEG 4 ファイル

WebM = VP8 ビデオ エンコーディングと Vorbis オーディオ エンコーディングを使用した WebM ファイル

注: 形式は、MPEG 4、H.264 ビデオ、AAC オーディオなど、上記の 3 つの詳細な要件を満たす必要があります。

この場合、ビデオ形式が正しければ、ほとんどのブラウザの互換性結果に満足できますが、IE678 はこれをサポートしておらず、中国では依然としてそのユーザーが非常に多いため、これをサポートするための別のソリューションを考える必要があります。

コードをコピー
コードは次のとおりです。

<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="624" height="351" style="margin-top: -10px;margin-left: -8px;" id="FLVPlayer1">
<param name="movie" value="FLVPlayer_Progressive.swf" />
<param name="quality" value="high" />
<param name="wmode" value="不透明" />
<param name="scale" value="noscale" />
<param name="salign" value="lt" />
<param name="FlashVars" value="&amp;MM_ComponentVersion=1&amp;skinName=public/swf/Clear_Skin_3&amp;streamName=public/video/test&amp;autoPlay=false&amp;autoRewind=false" />
<param name="swfversion" value="8,0,0,0" />
<!-- このパラメータ タグは、Flash Player 6.0 r65 以降のユーザーに最新バージョンの Flash Player をダウンロードするよう促します。ユーザーにこのプロンプトを表示したくない場合は、削除してください。 -->
<param name="expressinstall" value="expressInstall.swf" />
</オブジェクト>

ここでいくつかのファイルを紹介しています。flv形式のビデオに加えて、いくつかのswfまたはjsファイルもありますが、すべてDWソフトウェアによって生成されています。<object></object>タグを勉強したくない友人は、DWソフトウェアを使用してそれらを生成できます。巧みに統合できれば

これら 2 つのコードにより、すべての主要ブラウザと互換性のある究極のコードが得られます。

つまり、次のようになります:

jQuery を使用して、ブラウザが IE であるかどうかを判別します (特定の IE バージョンを判別する必要はありません。サーバーが IE の上位バージョンを渡さない可能性があるためです。一時的に、すべての IE は <object></object> タグを使用します)。バージョンに応じて異なるタグを読み込みます。コードは次のとおりです。

コードをコピー
コードは次のとおりです。

<スクリプト>
ブラウザで
document.write('<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="624" height="351" style="margin-top: -10px;margin-left: -8px;" id="FLVPlayer1">'+
'<param name="movie" value="FLVPlayer_Progressive.swf" />'+
'<param name="quality" value="high" />'+
'<param name="wmode" value="opaque" />'+
'<param name="scale" value="noscale" />'+
'<param name="salign" value="lt" />'+
'<param name="FlashVars" value="&amp;MM_ComponentVersion=1&amp;skinName=public/swf/Clear_Skin_3&amp;streamName=public/video/test&amp;autoPlay=false&amp;autoRewind=false" />'+
'<param name="swfversion" value="8,0,0,0" />'+
'<!-- このパラメータ タグは、Flash Player 6.0 r65 以降のユーザーに最新バージョンの Flash Player をダウンロードするよう促します。ユーザーにこのプロンプトを表示したくない場合は、削除してください。 -->'+
'<param name="expressinstall" value="expressInstall.swf" />'+
'</object>');
}それ以外{
document.write('<ビデオ幅="602px" 高さ="345px" コントロール="コントロール">'+
'<source src="public/video/test.mp4" type="video/mp4"></source>'+
'<source src="public/video/test.ogg" type="video/ogg"></source>'+
'お使いのブラウザはビデオタグをサポートしていません'+
'</ビデオ>');
}
</スクリプト>

このコードを書く前にjqueryファイルをインポートすることを忘れないでください

この時点で、すべてのブラウザと互換性のある HTML ビデオ コードを記述できます。

<<:  Dockerにlogstashをインストールする詳細な手順

>>:  DIV の一般的なタスク (パート 1) — 一般的なタスク (スクロール バーの表示、div の非表示、イベント バブリングの無効化など)

推薦する

bodyタグの主な属性の概要

bgcolor="テキストの色" background="背景画像&q...

Ubuntuはカーネルモジュールをコンパイルし、その内容はシステムログに反映されます。

目次1.Linuxログインインターフェース2. コードを書く3. Makefileを書く4. コンパ...

vue-routerフック関数はルーティングガードを実装します

目次概要グローバルフック関数ルーティング固有のフック関数コンポーネント内のフック関数概要ルートガード...

Reactのヒントはフックの依存関係の問題を解消する方法を教えます

reactプロジェクトで非常に一般的なシナリオ: const [watchValue、setWatc...

Centos7 に yum 経由で MySQL をインストールする方法

1. MySQLがインストールされているかどうかを確認する yum インストール済みリスト | gr...

Linux で 1 回限りのスケジュールされたタスクを実行するための at コマンドの使用に関する詳細な説明

目次序文1. 一度限りの計画タスクの紹介2. コマンド3. 1回限りのスケジュールタスクを作成する4...

Vueはシンプルなスライダー検証を実装する

この記事の例では、Vueスライダー検証の実装を共有しています。コードは次のとおりです。 <テン...

ユーザー エクスペリエンス デザイナーとは誰ですか?

怖いですね! 写真の翻訳: (内側から外側へ)最初のレイヤー:ユーザーエクスペリエンス第2層:コンテ...

MySQL でよく使用されるステートメントの包括的な概要 (必読)

以下にまとめたナレッジポイントはどれもよく使われる貴重な情報ばかりですので、ぜひ上手に集めてください...

JS で if 判定をスムーズに行う方法

目次序文コードの実装アイデア 1アイデア2要約する参照ドキュメント序文プロジェクト内の小さな要件ポイ...

PHP スケジュールバックアップ MySQL および mysqldump 構文パラメータの詳細

まず、MySQL バックアップ コマンド mysqldump の一般的な操作例をいくつか紹介します。...

Vueでデータ例を定義する方法

序文開発プロセスにおいて、変数の定義は非常に頻繁かつ基本的なタスクです。変数の使用シナリオと範囲に応...

興味深いカウントダウン効果を実現するjs

js興味深いカウントダウンケース、参考までに、具体的な内容は次のとおりですコード: <!DO...

MySQL 5.7.23 のインストールと設定のグラフィックチュートリアル

この記事では、mysql5.7.23 の詳細なインストールプロセスを記録し、皆さんと共有します。 1...