音楽プレーヤー制作例(html5)

PHP中文网
リリース: 2017-06-20 14:00:00
オリジナル
3697 人が閲覧しました

関連スキル

  • HTML5+CSS3 (ページレイアウトと動的効果の実装)HTML5+CSS3(实现页面布局和动态效果)

  • Iconfont(使用矢量图标库添加播放器相关图标)

  • LESS (动态CSS编写)

  • jQuery(快速编写js脚本)

  • gulp+webpack(自动化构建工具,实现LESS,CSS,JS等编译和压缩代码)

实现的功能

  • 播放暂停(点击切换播放状态)

  • 下一曲(切换下一首)

  • 随机播放(当前歌曲播放完自动播放下一曲)

  • 单曲循环(点击随机播放图标可切换成单曲循环)

  • 音量调节(鼠标移入滑动设置音量大小)

  • 歌曲进度条(可点击切换进度直接跳,也可以点击小圆点拖拽切换进度)

  • 实时歌词(点击词,切换歌词界面,根据实时进度自动滚动歌词)

  • 喜欢(点击添加了一个active效果)

  • 分享(可以直接分享到新浪微博)

audio 标签使用

  • autoplay 自动播放

  • loop 循环播放

  • volume 音量设置

  • currentTime 当前播放位置

  • duration 音频的长度

  • pause 暂停

  • play 播放

  • ended

Iconfont (ベクターアイコンライブラリを使用してプレーヤー関連のアイコンを追加)

LESS (動的 CSS の作成)

jQuery (js スクリプトをすばやく作成) 🎜🎜🎜🎜gulp+webpack (自動化) build LESS、CSS、JSなどのコンパイルと圧縮を実装するツール) 🎜🎜🎜🎜 実装された機能 🎜🎜🎜🎜 再生と一時停止(クリックで再生状態を切り替え) 🎜🎜🎜🎜次の曲(次の曲に切り替える) 🎜🎜🎜🎜シャッフル再生(現在の曲が再生された後、次の曲を自動的に再生します)🎜🎜🎜🎜シングルループ(ランダム再生アイコンをクリックしてシングルループに切り替えます)🎜🎜🎜🎜音量調整(マウスを移動してスライドさせます)音量を設定します)🎜🎜🎜🎜 曲の進行状況バー (クリックして進行状況を切り替えて直接ジャンプするか、小さな点をクリックしてドラッグして進行状況を切り替えることができます) 🎜🎜🎜🎜 リアルタイム歌詞 (単語をクリックします)歌詞インターフェイスを切り替え、リアルタイムの進行状況に応じて歌詞を自動的にスクロールします) 🎜🎜🎜🎜いいね (アクティブな効果を追加をクリック) 🎜🎜🎜🎜共有 (新浪微博に直接共有できます) 🎜🎜🎜🎜オーディオ🎜🎜🎜🎜autoplayを使用したタグ 自動再生🎜🎜🎜🎜loop ループ再生🎜🎜🎜🎜volume 音量設定🎜🎜🎜🎜currentTime 現在の再生位置🎜🎜🎜🎜duration 音声の長さ🎜 🎜🎜🎜pause 一時停止🎜🎜🎜🎜play 再生🎜 🎜🎜🎜ended オーディオが終了したかどうかを返します🎜🎜🎜🎜再生と一時停止のコード🎜
_Music.prototype.playMusic = function(){var _this = this;this.play.on('click', function(){if (_this.audio.paused) {
            _this.audio.play();
            $(this).html('');
        } else {
            _this.audio.pause();
            $(this).html('')
        }
    });
}
ログイン後にコピー
🎜音楽進行バーコード🎜
_Music.prototype.volumeDrag = function(){var _this = this;this.btn.on('mousedown', function(){
        _this.clicking = true;
        _this.audio.pause();
    })this.btn.on('mouseup', function(){
        _this.clicking = false;
        _this.audio.play();
    })this.progress.on('mousemove click', function(e){if(_this.clicking || e.type === 'click'){var len = $(this).width(),
                left = e.pageX - $(this).offset().left,
                volume = left / len;if(volume <= 1 || volume >= 0){
                _this.audio.currentTime =  volume * _this.audio.duration;
                _this.progressLine.css(&#39;width&#39;, volume *100 +&#39;%&#39;);
            }
        }
    });
}
ログイン後にコピー
🎜歌詞追加コード🎜
_Music.prototype.readyLyric = function(lyric){this.lyricBox.empty();var lyricLength = 0;var html = &#39;<div class="lyric-ani" data-height="20">&#39;;
    lyric.forEach(function(element,index) {var ele = element[1] === undefined ? &#39;^_^歌词错误^_^&#39; :  element[1];
        html += &#39;<p class="lyric-line" data-id="&#39;+index+&#39;" data-time="&#39; + element[0] + &#39;"> &#39; +  ele + &#39; </p>&#39;;
        lyricLength++;
    });
    html += &#39;</div>&#39;;this.lyricBox.append(html);this.onTimeUpdate(lyricLength);
}
ログイン後にコピー
🎜コードがたくさんあるので省略します良いと思ったら、「いいね!」を押してください (GitHub でスターを付けることもできます)。ありがとうございます。 ! !ソースコードをグループに追加します🎜

以上が音楽プレーヤー制作例(html5)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!