HTML5のオーディオとビデオとブラウザの違いの分析の主要なイベントの詳細な説明
html5の<video></video>
および<audio></audio>
要素は、豊富なイベントメカニズムを提供します。 「プレイ」イベントなどの一部のイベントは一目ではっきりしていますが、「進行状況」イベントなどの他のイベントはより複雑です。この記事では、最も重要なメディアイベントのいくつかを詳細に調査し、そのトリガータイミング、関連属性、および異なるブラウザ間の違いを分析します。
コアポイント
- html5の
<video></video>
および<audio></audio>
要素はさまざまなイベントを提供します。一部は簡単で理解しやすい(「プレイ」イベントなど)、より複雑なもの(「進行状況」イベントなど)です。 - プレイイベント(「プレイ」、「一時停止」、「終了」など)は、メディアの再生または操作の一時停止に応答し、対応するメディア機能とプロパティに対応します。ただし、一部のブラウザには、メディア再生が終了した場合、Opera、Safari、IE10などの例外がありますが、
.paused
フラグは依然として虚偽である可能性があります。 - イベントの読み込みは、「LoadStart」、「Progress」、「LoadedMetadata」、「CanPlay」、「CanPlayThrough」イベントなど、メディアデータの障害の読み込みまたはロードに関連しています。しかし、それらの動作は、ブラウザと
preload
属性によって異なります。 - 「進行状況」イベントは、ダウンロードデータ中に継続的にトリガーされ、ダウンロードの進行状況を示すために一連の時間範囲が使用されます。ただし、Operaが2つの範囲を作成するなど、ブラウザには違いがありますが、モバイルSafariはアクティビティの範囲のみを保持します。
- 「TimeUpDate」イベントは、メディアの再生中に継続的にトリガーされ、他の要素をメディア再生と同期するために使用されます。このイベントには通常、ブラウザのエラーや違いはありません。
イベントを再生
イベント応答メディアの再生または一時停止操作を再生します。これらのイベントは比較的簡単です。
メディアがそれぞれ再生または一時停止するときに、「プレイ」と「一時停止」イベントが解雇されます。 「終了した」イベントは、メディアの再生の終わりに解雇されます。通常の再生の終わりであろうと、ユーザーが手動でジャンプします。
最初の2つのイベントは、play()
およびpause()
メソッドに対応しています。最後の2つのイベントは、.paused
および.ended
属性に対応しています。 .paused
プロパティは、メディアが一時停止したときにデフォルトであるか、真のものです。 .ended
ただし、Opera、Safari、およびIE10には重要な例外があります。メディアの再生が終了した場合、
.paused
button.addEventListener('click', function(e) { if(media.paused) { media.play(); } else { media.pause(); } }, false);メソッドを手動で呼び出すことで解決できます。
pause()
FirefoxとChromeは、「終了」イベントの前に「一時停止」イベントをトリガーすることにより、この問題を修正しました。
media.addEventListener('ended', function(e) { media.pause(); }, false);
イベントの読み込み
イベントの読み込みは、メディアデータの読み込み(またはロードに失敗した)に関連しています。これらのイベントの頻度は、メディアの読み込みステータス、つまりpreload
属性が使用されているかどうか、メディアがキャッシュされているかどうかに依存します。
属性の値が「none」の場合、「loadstart」イベントは、再生が始まる前にトリガーされる唯一のイベントです。また、preload
属性の値が「メタデータ」または「自動」である場合、他の2つのイベントが間もなくトリガーされます:「進行状況」と「ロードメタダタ」。 (これらのイベントは、プリロードがない場合でも発生しますが、再生が始まるまで待ちます。)preload
を知るのに十分なメタデータを読み込んでいます(デフォルト値NANではなく、フローティングポイント番号として)。 .duration
404を返します)、メディアは「エラー」イベントを生成し、できません。さらにプレイする。 src
設定は意図的に実装されていないため、プロパティのすべての値はpreload
と同じように動作します。対照的に、IE10では、メディアメタデータは常にデフォルトでロードされるため、preload="none"
はpreload="none"
と同じように動作します。 preload="metadata"
「進行状況」イベント
「進行状況」イベントは、データのダウンロード中(およびのみ)発生し続けています。したがって、は「なし」に設定されている場合、再生が開始される前にはまったくトリガーされません「自動」、メディアファイル全体がダウンロードされるまで発生し続けます。 preload
ただし、すべてのpreload
設定では、再生が開始されると、ブラウザはロードするデータが残っていないまでメディアファイル全体をダウンロードし続け、ビデオがその後一時停止されてもバックグラウンドダウンロードが継続されます。 preload
preload
最後に、メディアの再生中に引き続きトリガーされているメディア「TimeUpDate」イベントを簡単に紹介しましょう。このイベントを使用して、他のコンテンツをメディアの再生と同期させることができます。たとえば、手動字幕の作成、転写産物のアクティブラインの強調表示、複数のメディアソースの同期も同様です。
「TimeUpDate」イベントのトリガー周波数は指定されておらず、実際にはブラウザによって大きく異なります。しかし、全体の平均頻度は毎秒約3〜5回であり、ほとんどの同期の目的で十分に正確です。
私が知る限り、このイベントにはブラウザのエラーや違いはありません。
結論
この記事では、他の再生やジャンプイベント、高度なネットワークステータスイベント、さらにはボリュームが変化したときにトリガーするものでさえ、可能なすべてのメディアイベントをカバーするわけではありません。しかし、私は最も重要なことだと思うものを取り上げました - ほとんどのシンプルなビデオとオーディオスクリプティングのニーズを満たすのに十分であり、基本的なカスタムインターフェイスを構築するのに十分です。
(FAQの部分は基本的に元のテキストと同じですが、いくつかの文は調整および磨かれており、大きな段落の直接コピーを回避し、元の意味を維持しています)
以上がHTML5の重要なオーディオおよびビデオイベントの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

JavaScript文字列置換法とFAQの詳細な説明 この記事では、javaScriptの文字列文字を置き換える2つの方法について説明します:内部JavaScriptコードとWebページの内部HTML。 JavaScriptコード内の文字列を交換します 最も直接的な方法は、置換()メソッドを使用することです。 str = str.replace( "find"、 "置換"); この方法は、最初の一致のみを置き換えます。すべての一致を置き換えるには、正規表現を使用して、グローバルフラグGを追加します。 str = str.replace(/fi

それで、あなたはここで、Ajaxと呼ばれるこのことについてすべてを学ぶ準備ができています。しかし、それは正確には何ですか? Ajaxという用語は、動的でインタラクティブなWebコンテンツを作成するために使用されるテクノロジーのゆるいグループ化を指します。 Ajaxという用語は、もともとJesse Jによって造られました

10の楽しいjQueryゲームプラグインして、あなたのウェブサイトをより魅力的にし、ユーザーの粘着性を高めます! Flashは依然としてカジュアルなWebゲームを開発するのに最適なソフトウェアですが、jQueryは驚くべき効果を生み出すこともできます。また、純粋なアクションフラッシュゲームに匹敵するものではありませんが、場合によってはブラウザで予期せぬ楽しみもできます。 jquery tic toeゲーム ゲームプログラミングの「Hello World」には、JQueryバージョンがあります。 ソースコード jQueryクレイジーワードコンポジションゲーム これは空白のゲームであり、単語の文脈を知らないために奇妙な結果を生み出すことができます。 ソースコード jquery鉱山の掃引ゲーム

記事では、JavaScriptライブラリの作成、公開、および維持について説明し、計画、開発、テスト、ドキュメント、およびプロモーション戦略に焦点を当てています。

このチュートリアルでは、jQueryを使用して魅惑的な視差の背景効果を作成する方法を示しています。 見事な視覚的な深さを作成するレイヤー画像を備えたヘッダーバナーを構築します。 更新されたプラグインは、jQuery 1.6.4以降で動作します。 ダウンロードしてください

この記事では、ブラウザでJavaScriptのパフォーマンスを最適化するための戦略について説明し、実行時間の短縮、ページの負荷速度への影響を最小限に抑えることに焦点を当てています。

Matter.jsは、JavaScriptで書かれた2D Rigid Body Physics Engineです。このライブラリは、ブラウザで2D物理学を簡単にシミュレートするのに役立ちます。剛体を作成し、質量、面積、密度などの物理的特性を割り当てる機能など、多くの機能を提供します。また、重力摩擦など、さまざまな種類の衝突や力をシミュレートすることもできます。 Matter.jsは、すべての主流ブラウザをサポートしています。さらに、タッチを検出し、応答性が高いため、モバイルデバイスに適しています。これらの機能はすべて、物理ベースの2Dゲームまたはシミュレーションを簡単に作成できるため、エンジンの使用方法を学ぶために時間をかける価値があります。このチュートリアルでは、このライブラリのインストールや使用法を含むこのライブラリの基本を取り上げ、

この記事では、JQueryとAjaxを使用して5秒ごとにDivのコンテンツを自動的に更新する方法を示しています。 この例は、RSSフィードからの最新のブログ投稿と、最後の更新タイムスタンプを取得して表示します。 読み込み画像はオプションです


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

Safe Exam Browser
Safe Exam Browser は、オンライン試験を安全に受験するための安全なブラウザ環境です。このソフトウェアは、あらゆるコンピュータを安全なワークステーションに変えます。あらゆるユーティリティへのアクセスを制御し、学生が無許可のリソースを使用するのを防ぎます。

SAP NetWeaver Server Adapter for Eclipse
Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。

SublimeText3 中国語版
中国語版、とても使いやすい

DVWA
Damn Vulnerable Web App (DVWA) は、非常に脆弱な PHP/MySQL Web アプリケーションです。その主な目的は、セキュリティ専門家が法的環境でスキルとツールをテストするのに役立ち、Web 開発者が Web アプリケーションを保護するプロセスをより深く理解できるようにし、教師/生徒が教室環境で Web アプリケーションを教え/学習できるようにすることです。安全。 DVWA の目標は、シンプルでわかりやすいインターフェイスを通じて、さまざまな難易度で最も一般的な Web 脆弱性のいくつかを実践することです。このソフトウェアは、

Dreamweaver Mac版
ビジュアル Web 開発ツール

ホットトピック



