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 の非表示、イベント バブリングの無効化など)

推薦する

Node.jsをゼロから学ぶ

目次URL モジュール1. 解析メソッド2. フォーマット方法3. 解決方法イベントモジュール(イベ...

MySQL 5.7.10 winx64 のインストールと設定方法のグラフィック チュートリアル (win10)

MySQL は比較的使いやすいリレーショナル データベースです。今日は、win10 システムを再イ...

docker compose を使用して fastDFS ファイル サーバーを構築する方法

前回の記事では、docker compose を使用して FastDfs ファイル サーバーをインス...

製品の拡大鏡効果を実現する JavaScript

この記事では、参考までに、製品拡大鏡を実装するためのJavaScriptの具体的なコードを紹介します...

Dockerイメージのエクスポートとインポート操作

基本イメージが以前に構成されていて、これらのイメージが他の場所でも必要な場合はどうなりますか?回答:...

JavaScript es6 における var、let、const の違いの詳細な説明

まず、よくある質問は、ECMAScript と JavaScript の関係は何ですか? ECMAS...

VMware および CentOS システムのインストール方法 - ルート パスワードをリセットする

今日のタスク1. Linuxディストリビューションの選択2.vmwareが仮想マシン(centos)...

MySQLコンテナ間のレプリケーション構成例の詳細な説明

背景先週、会社で MySQL レプリケーションのトレーニングを受けたので、今週末は学んだことを実践す...

Linuxシステムはポート3306、8080などを外部に開放します。ファイアウォール設定の詳しい説明

多くの場合、Linux システムに Web サービス アプリケーション (Tomcat、Apache...

Angularデータバインディングとその実装の詳細な説明

目次序文データバインディングとは何ですか? Angular のデータバインディングの種類一方向データ...

Docker の MySQL 時間とシステム時間の不一致の問題を解決する

最近、Docker に MySQL をインストールしたところ、データベースの時刻がシステム時刻と 8...

Vue 親コンポーネントが子コンポーネント関数の実装を呼び出す

Vue親コンポーネントは子コンポーネントの関数を呼び出す親コンポーネントはイベントを通じて子コンポー...

Ubuntu 基本チュートリアル: apt-get コマンド

序文apt-get コマンドは、Ubuntu システムのパッケージ管理ツールです。パッケージのインス...

MySQLがファントムリードを解決する方法の詳細な説明

1. ファントムリーディングとは何ですか?トランザクションにおいて、複数のクエリの後に結果セットの数...

Vueはキャンバスの手書き入力を使用して中国語を認識します

効果画像: 序文:最近、屋外の大画面プロジェクトに取り組んでいました。システムの入力方法は使いにくか...