HTML5+CSS3
(實作頁面佈局與動態效果)
Iconfont
(使用向量圖示庫新增播放器相關圖示)
LESS
(動態CSS編寫)
jQuery
(快速編寫js腳本)
gulp+webpack
(自動化建置工具,實作LESS,CSS,JS等編譯和壓縮程式碼)
播放暫停(點擊切換播放狀態)
下一曲(切換下一首)
隨機播放(目前歌曲播放完自動播放下一曲)
單曲循環(點擊隨機播放圖示可切換成單曲循環)
音量調整(滑鼠移入滑動設定音量大小)
歌曲進度列(可點擊切換進度直接跳,也可以點擊小圓點拖曳切換進度)
即時歌詞(點擊詞,切換歌詞介面,根據即時進度自動捲動歌詞)
喜歡(點擊新增了一個active效果)
分享(可以直接分享到新浪微博)
autoplay
自動播放
loop
循環播放
_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('width', volume *100 +'%'); } } }); }
_Music.prototype.readyLyric = function(lyric){this.lyricBox.empty();var lyricLength = 0;var html = '<div class="lyric-ani" data-height="20">'; lyric.forEach(function(element,index) {var ele = element[1] === undefined ? '^_^歌词错误^_^' : element[1]; html += '<p class="lyric-line" data-id="'+index+'" data-time="' + element[0] + '"> ' + ele + ' </p>'; lyricLength++; }); html += '</div>';this.lyricBox.append(html);this.onTimeUpdate(lyricLength); }
以上是音樂播放器的製作實例(html5)的詳細內容。更多資訊請關注PHP中文網其他相關文章!