摘要:歡迎吐槽功能思路分析用了這么多年的音樂播放軟件,目前已是網易云音樂的重度用戶。一個基本的音樂播放器基礎功能有播放暫停歌曲切換。用媒體查詢實現響應式,刪除不必要的區域。細節實現利用定時器實時顯示歌曲播放時間,利用百分比來動態改變進度條的長度。
大概很早的時候就有想法做一個音樂播放器玩玩,以前可能還考慮過做APP,大一的時候第一個html的靜態頁面也是做的音樂網站,想想,大概小時候比較喜歡音樂吧。然而,現在入了前端大坑,就用h5做一個耍耍好了。功能不多,UI不美,But,練習了html5中audio及其API的使用。歡迎吐槽~
功能思路分析用了這么多年的音樂播放軟件,目前已是網易云音樂的重度用戶。
一個基本的音樂播放器基礎功能有:播放、暫停、歌曲切換。
用戶體驗基礎功能:歌曲跳躍播放、音量調整、歌曲單曲或列表循環。
當了解這些之后,再瞅一眼audio的api,簡直了,基本上都能實現,開做。
采用了比較喜歡的深藍漸變背景加活力黃搭配,界面沒啥好說的,蘿卜白菜,各有所愛。
用css3媒體查詢實現響應式,刪除不必要的區域。
1.設置默認屬性
默認不自動播放audio.autoplay = false;
默認不單曲循環audio.loop = false;
初始化音量audio.volume = 0.5;
默認不自動緩沖加載audio.autobuffer = false;2.基本功能實現
這里不提了,有想了解的可以去github(地址)看源碼。
3.細節實現
①利用定時器實時顯示歌曲播放時間,利用百分比來動態改變進度條的長度。
②利用audio.readyState來設置緩沖進度,用css3來實現平滑改變
在線音樂實現③可點擊歌曲進度條任意位置實現跳轉播放,音量同理
④實現靜音,單曲循環和列表循環
這次采用的是網易云音樂的API來進行在線音樂的實現。此處參考了小青年的文章html5+ XMLHttpRequest 與mui ajax用法詳解。
利用事件委托,為動態加載的結果綁定監聽事件。將搜到的資源數據加載到audio中去,然后播放在線資源。
本來想加入localStorage存儲播放列表的,對于體驗還有所考慮,畢竟只是個玩兒的東西,所以保留想法了,沒有加入。
不得不承認,總結能力真的有夠差,直接上結果吧:(http://fehey.com/hey-Audio/)
喜歡的可以去github看源碼,有什么改進,歡迎留言(star也不介意哦?)~
個人博客:(http://fehey.com/)
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/91029.html
摘要:第五名中國中國在我們的網上應用店里一直評分較高,排名較前。中國手機網頁端的滑動體驗和閱讀體驗都非常優秀,究其原因,我認為是十分用心的體驗設計,與優化過的請求,和它對于加速的應用。值得一提的是,中國是基于最近大熱的開發的。 showImg(https://segmentfault.com/img/bVr50R); 前言 優秀的前端工程師戴著腳銬跳舞,究竟能把 HTML5 的體驗推進到什么...
摘要:簡介是一款簡潔漂亮的音樂播放器在我第一次看到這款播放器顏值的時候讓我眼前一亮,我非常崇拜那些能設計出好看界面的設計師但是在用過之后發現還是有不足的地方這是我曾經提過的用了一段時間,很喜歡簡潔的,提一些其他可改進的建議我認為有必要提供動態管理 簡介 @DIYgod/APlayer 是一款簡潔漂亮的 HTML5 音樂播放器 (〃?ω?) 在我第一次看到這款播放器顏值的時候讓我眼前一亮,我...
閱讀 2780·2021-09-23 11:44
閱讀 1671·2021-09-13 10:24
閱讀 2619·2021-09-08 09:36
閱讀 1231·2019-08-30 15:54
閱讀 2248·2019-08-30 13:54
閱讀 3308·2019-08-30 10:57
閱讀 1844·2019-08-29 18:43
閱讀 3609·2019-08-29 15:10