検索
ホームページウェブフロントエンドH5 チュートリアルクールなオーディオ プレーヤーの作成に関する HTML5 グラフィック チュートリアル plug-in_html5 チュートリアルのスキル

上の写真は、このオーディオ プレーヤーの UI インターフェイス図で、曲のプレイリストも非表示になっています。プレーヤーの UI 全体は、背景のポートレートと曲のスター評価を除いて、CSS とフォントフェイスで描画されます。これらはすべて CSS とフォントフェイスで描画されます。唯一難しそうなのは、CD とフォントフェイスの制作です。曲内 CD とディスク プレーヤーの両方には、再生中にアニメーション化されたインタラクティブな効果があります。これについては、後のセクションで説明します。プレーヤーで CD をクリックしてプレイリストを開きます~

このチュートリアルは主に Html5 の新しい

主な機能:

1. 再生、一時停止、前の曲、次の曲、音量の増減

2. CD をクリックしてプレイリストを開いたり閉じたりします

3. ローカルの音楽ファイルをプレーヤーにドラッグして再生できます

HTML 構造


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




> ;






    e
    c> ;
    d


    0:00



    0:00


    > ;

    オーディオタグ

    上記の構造では、HTML5 の新しい audio タグが見つかります。これは、名前が示すように、プレーヤーのコントローラーです。controls 属性は、ブラウザーがオーディオの再生コントロールを提供することを指定します。 Chrome ブラウザと同様に、この属性を


    の下の audio タグに設定すると、コードは次のようになります:

    ただし、ブラウザごとにオーディオ タグのレンダリング効果が異なるため、この単純な方法はクロスブラウザでの使用には適しておらず、ブラウザのデフォルトのプレーヤー コントロールで提供される機能は非常に限られています。 。したがって、通常はこの属性を設定しないことでブラウザのデフォルトの再生コントロールを非表示にし、追加のタグとスタイルを手動で追加してプレーヤーの UI インターフェイスをカスタマイズします。

    再生コントロール

    プレーヤーの UI インターフェイスが描画された後、最初に行う必要があるのは、3 つの主要なコントロール ボタン (再生、前の曲、次の曲) に対応するイベント リスナーを追加することです。


    コードをコピーします
    コードは次のとおりです:

    var myAudio = $(" #myAudio audio ")[0];
    var $sourceList = $("#myAudio source");
    var currentSrcIndex = 0;
    var currentSr = "";


    コードをコピーします
    コードは次のとおりです:

    $(".btn_play" ).click (function(){
    if (myAudio.paused) {
    myAudio.play();
    } else {
    myAudio.pause();
    }
    } );
    $(".btn_next").click(function(){
    currentSrcIndex > $sourceList.length - 1 && (currentSrcIndex = 0);
    currentSrc = $("#myAudio source" ).eq (currentSrcIndex).prop("src");
    myAudio.src = currentSrc;
    myAudio.play();
    });
    $(".btn_previous").click (function( ){
    --currentSrcIndex currentSrc = $("#myAudio source").eq(currentSrcIndex).prop("src");
    myAudio.src = currentSrc;
    myAudio.play();
    });

    上記のボタン クリック イベント モニタリングでは、元の audio 要素の play() メソッドとpause() メソッドを呼び出して、オーディオの再生と一時停止を制御します。さらに、audio 要素は、現在再生中のファイルのファイル ソースを表す currentSrc 属性を提供します。この属性を設定することで、現在再生中のソング トラックを制御します。

    音量調節

    次に、音量バーの両側にある 2 つの小さなスピーカーにイベント モニタリングを追加して、左右の 2 つの小さなスピーカーをクリックすると、現在の再生音量を増減できるようにします。プレーヤーの音量を設定するには、audio 要素で提供される volume 属性を呼び出すことができます。音量の最大値は 1 で、最小値は 0 です。ここでは、スピーカーをクリックするたびに音量を 0.1 ずつ増減して音量を制御します。もちろん、他の値を使用することもできます。ただし、JavaScript 言語では小数点以下を正確に制御できないことに注意してください。そのため、音量が 0.1 ずつ減少するたびに、実際に減少する音量は 0.1 よりわずかに大きくなり、音量減少ボタンを 9 回クリックすると 0.09 が残ります。 xxxx のボリュームを連続して再生すると、プレーヤーをミュートできない理由がわかります。 。 。もちろん、この問題は簡単に修正できます (以下を参照)。ちょっと思い出してください。


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

    $(".volume_control .減少") .click(function() {
    var volume = myAudio.volume - 0.1;
    volume myAudio.changeVolumeTo(volume);
    } );
    $(".volume_control .increase").click(function() {
    var volume = myAudio.volume 0.1;
    volume > 1 && (volume = 1);
    myAudio .changeVolumeTo( volume);
    });

    さらに、スライダーを使用するか、音量バーの特定の位置をクリックして音量を制御する機能も実装する必要があります。上記の基礎があれば簡単に完成します。まず、ボリューム バーの特定の位置をクリックしてボリュームを制御する機能を見てみましょう。ボリューム バーの特定の位置をクリックし、ボリューム バーの開始点からその位置までの長さの値を計算します。この値をボリューム バーの全長で割ります (ここでは 100)。パーセンテージ値を取得し、そのパーセンテージ値に最大ボリューム値 1 を乗算して、ジャンプ先のボリューム値を取得し、それを割り当てます。音量。スライダーを使用して音量を制御する方法もこれに似ています。主なことは、音量バー上のスライダーの位置の値を計算する方法を知ることです。ここでは詳しく説明しませんが、ご質問がございましたら、以下にメッセージを残してください。


    コードをコピーします
    コードは次のとおりです:

    $(".volume_control .base_bar").mousedown(function(ev){
    var posX = ev.clientX;
    var targetLeft = $(this).offset().left;
    var volume = (posX - targetLeft)/100;
    volume > 1 && (volume = 1);
    volume myAudio.changeVolumeTo(volume );
    });
    $(".volume_control .slider").mousedown(starDrag = function(ev) {
    ev.preventDefault();
    var origLeft = $(this). Position().left; /*スライダーの初期位置*/
    var origX = ev.clientX; /*マウスの初期位置*/
    var target = this;
    var progress_bar = $(". volume_control .progress_bar")[0];
    $(document).mousemove(doDrag = function(ev){
    ev.preventDefault();
    var moveX = ev.clientX - origX; /*計算Mouse の移動距離*/
    var curLeft = origLeft moveX /*マウスの移動距離をスライダーの移動距離として使用します*/
    (curLeft (curLeft > 93) && (curLeft = 93);
    target.style.left = curLeft "px";
    progress_bar.style.width = curLeft 7 "%";
    myAudio .changeVolumeTo(( curLeft 7)/100);
    });
    $(document).mouseup(stopDrag = function(){
    $(document).unbind("mousemove",doDrag);
    $ (document).unbind("mouseup",stopDrag);
    });
    });

    時間制御

    これで、プレーヤーは基本的に動作するようになりましたが、オーディオの一部を特定の時点に直接スキップできるようにしたいと考えています。では、どうすればそれを達成できるのでしょうか? ? !標準を策定する委員会のメンバーもバカではないので、このような一般的に使用される関数を省略することはできません。すぐに API を参照すると、audio 要素に、非常に簡潔でわかりやすい名前が付けられていることがわかります。 (実際、ほとんどの属性は簡単に理解できます)。この属性を設定すると、現在の再生時点を設定できます。

    ここでは、オーディオの別の属性である継続時間も使用する必要があります。これは、現在再生中のファイルの合計時間の長さを指します。したがって、ボリューム制御の実装に応じて、次のようにすることができます:

    1. プログレスバーの特定の位置をクリックし、プログレスバーの始点からその位置までの長さの、プログレスバーの全長に対するパーセンテージ値を計算します (たとえば、中央の位置をクリックします)プログレス バーの開始点からその位置までの長さは、プログレス バーの合計の長さの 50% を占めます) となり、パーセンテージとして記録されます。

    2. 次に、ファイルの合計期間にパーセンテージを乗算して、ジャンプ先の時点の値を取得し、その値を currentTime に代入して、実装する関数を完成させます。


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

    $(".time_line . base_bar") .mousedown(function(ev){
    var posX = ev.clientX;
    var targetLeft = $(this).offset().left;
    varpercent = (posX - targetLeft)/ 140 * 100 ;
    myAudio.currentTime = myAudio.duration *percentage / 100;
    });

    この時点で、プレーヤーは基本的に形を整えています。重要ではない UI インタラクションの実装がいくつか残っています (実際、それらが私にとって最も重要です、笑)。興味がある場合は、ソース コードを確認してください。質問がある場合は、以下にコメントを残すことができます。私たちがコミュニケーションをとり、もっと学ぶことができれば幸いです。

    声明
    この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
    H5コードの例:実用的なアプリケーションとチュートリアルH5コードの例:実用的なアプリケーションとチュートリアルApr 25, 2025 am 12:10 AM

    H5は、さまざまな新機能と機能を提供し、フロントエンド開発の機能を大幅に向上させます。 1.マルチメディアサポート:メディアを埋め込んで要素を埋め込み、プラグインは必要ありません。 2。キャンバス:要素を使用して、2Dグラフィックとアニメーションを動的にレンダリングします。 3。ローカルストレージ:ユーザーエクスペリエンスを改善するために、ローカルストレージとセッションストレージを介して永続的なデータストレージを実装します。

    H5とHTML5の接続:類似性と相違点H5とHTML5の接続:類似性と相違点Apr 24, 2025 am 12:01 AM

    H5とHTML5は異なる概念です。HTML5は、新しい要素とAPIを含むHTMLのバージョンです。 H5は、HTML5に基づくモバイルアプリケーション開発フレームワークです。 HTML5はブラウザを介してコードを解析およびレンダリングしますが、H5アプリケーションはコンテナを実行し、JavaScriptを介してネイティブコードと対話する必要があります。

    H5コードの構成要素:キー要素とその目的H5コードの構成要素:キー要素とその目的Apr 23, 2025 am 12:09 AM

    HTML5の重要な要素には、最新のWebページの構築に使用される、、,,,,などが含まれます。 1.ヘッドコンテンツを定義します。2。リンクをナビゲートするために使用されます。3。独立した記事のコンテンツを表します。4。ページコンテンツを整理します。5。サイドバーコンテンツを表示します。

    HTML5およびH5:一般的な使用法の理解HTML5およびH5:一般的な使用法の理解Apr 22, 2025 am 12:01 AM

    HTML5とHTML5の略語であるHTML5とH5の間に違いはありません。 1.HTML5はHTMLの5番目のバージョンであり、Webページのマルチメディア関数とインタラクティブ機能を強化します。 2.H5は、HTML5ベースのモバイルWebページまたはアプリケーションを参照するためによく使用され、さまざまなモバイルデバイスに適しています。

    HTML5:現代のウェブのビルディングブロック(H5)HTML5:現代のウェブのビルディングブロック(H5)Apr 21, 2025 am 12:05 AM

    HTML5は、W3Cによって標準化されたHyperText Markup言語の最新バージョンです。 HTML5は、新しいセマンティックタグ、マルチメディアサポート、フォームの強化、Web構造の改善、ユーザーエクスペリエンス、SEO効果を導入します。 HTML5は、Webページ構造をより明確にし、SEO効果をより良くするために、、、、、、などの新しいセマンティックタグを導入します。 HTML5はマルチメディア要素をサポートしており、サードパーティのプラグインは不要で、ユーザーエクスペリエンスと読み込み速度が向上します。 HTML5はフォーム関数を強化し、ユーザーエクスペリエンスを向上させ、フォーム検証効率を向上させるなどの新しい入力タイプを導入します。

    H5コード:クリーンで効率的なHTML5の書き込みH5コード:クリーンで効率的なHTML5の書き込みApr 20, 2025 am 12:06 AM

    クリーンで効率的なHTML5コードを書き込む方法は?答えは、タグのセマンティック、構造化されたコード、パフォーマンスの最適化、一般的な間違いを回避することにより、一般的な間違いを避けることです。 1.コードの読みやすさとSEO効果を改善するには、セマンティックタグなどを使用します。 2。適切なインデントとコメントを使用して、コードを構造化して読みやすいままにします。 3.不必要なタグを減らし、CDNを使用してコードを圧縮することにより、パフォーマンスを最適化します。 4.タグが閉じていないなどの一般的な間違いを避け、コードの有効性を確認してください。

    H5:ウェブ上のユーザーエクスペリエンスをどのように強化するかH5:ウェブ上のユーザーエクスペリエンスをどのように強化するかApr 19, 2025 am 12:08 AM

    H5は、マルチメディアサポート、オフラインストレージ、パフォーマンスの最適化により、Webユーザーエクスペリエンスを向上させます。 1)マルチメディアサポート:H5と要素は、開発を簡素化し、ユーザーエクスペリエンスを向上させます。 2)オフラインストレージ:WebStorageとIndexEdDBは、エクスペリエンスを改善するためにオフラインで使用できるようにします。 3)パフォーマンスの最適化:ウェブワーカーと要素は、パフォーマンスを最適化して帯域幅の消費を削減します。

    H5コードの分解:タグ、要素、属性H5コードの分解:タグ、要素、属性Apr 18, 2025 am 12:06 AM

    HTML5コードは、タグ、要素、属性で構成されています。1。タグはコンテンツタイプを定義し、などの角度ブラケットに囲まれています。 2。要素は、startタグ、内容、および内容などのエンドタグで構成されています。 3。属性は、開始タグのキー値のペアを定義し、ような関数を強化します。これらは、Web構造を構築するための基本ユニットです。

    See all articles

    ホットAIツール

    Undresser.AI Undress

    Undresser.AI Undress

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

    AI Clothes Remover

    AI Clothes Remover

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

    Undress AI Tool

    Undress AI Tool

    脱衣画像を無料で

    Clothoff.io

    Clothoff.io

    AI衣類リムーバー

    Video Face Swap

    Video Face Swap

    完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

    ホットツール

    Safe Exam Browser

    Safe Exam Browser

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

    PhpStorm Mac バージョン

    PhpStorm Mac バージョン

    最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール

    MinGW - Minimalist GNU for Windows

    MinGW - Minimalist GNU for Windows

    このプロジェクトは osdn.net/projects/mingw に移行中です。引き続きそこでフォローしていただけます。 MinGW: GNU Compiler Collection (GCC) のネイティブ Windows ポートであり、ネイティブ Windows アプリケーションを構築するための自由に配布可能なインポート ライブラリとヘッダー ファイルであり、C99 機能をサポートする MSVC ランタイムの拡張機能が含まれています。すべての MinGW ソフトウェアは 64 ビット Windows プラットフォームで実行できます。

    MantisBT

    MantisBT

    Mantis は、製品の欠陥追跡を支援するために設計された、導入が簡単な Web ベースの欠陥追跡ツールです。 PHP、MySQL、Web サーバーが必要です。デモおよびホスティング サービスをチェックしてください。

    VSCode Windows 64 ビットのダウンロード

    VSCode Windows 64 ビットのダウンロード

    Microsoft によって発売された無料で強力な IDE エディター