第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定

從零開始寫一個(gè)酷狗音樂播放器 —— 下

標(biāo)簽:
Html/CSS JQuery JavaScript

    本次呢?更新的主要是音乐盒这块,包括音乐列表,基本的音乐播放所需的基本组件。已都更新至本人的github啦。喜欢的给个star呵呵,传送门,我们一起来看看效果吧。演示传送门

    本人平时工作也较忙,偶尔挤出一点时间写一些小玩意,时间较短,会相对比较简单,也可能会有一些bug,欢迎大家在ishare提出。(可能修复不会很及时)

    咱一起来看看吧:

https://img1.sycdn.imooc.com//5c52e78100010a3806570941.jpg

    再看歌词这边:

https://img1.sycdn.imooc.com//5c52e6260001003006510937.jpg

    那到底是怎么做出来的呢?思路是怎样?

    上篇我们已有关于歌词方面的介绍,咱这次来一下音乐盒方面的吧。

    概括起来就是调用html5强大的音频接口,也就是audio标签。它提供了一些api供我们调用。

    首先,歌曲得能播放对吧?

    我们可以写一个单独的函数来处理这方面的逻辑。这个播放其实就是往audio标签的src注入对应的音频文件,同时设置播放。

https://img1.sycdn.imooc.com//5c52e93000018ed910920408.jpg

    但是我们有很多种情况要用到播放,我可能点击歌曲列表要能播放,点击播放按钮也能播放,点击上一曲,下一曲也能播放对吧?需要注意的是注入的音频文件跟歌词文件得对应好。

    能播放了,那么得能暂停对吧?

    暂停比较简单,你只需要直接暂停就好了,无需考虑是否是新的歌曲来临。

    然后呢?歌曲怎么来的,歌曲列表又是怎么渲染的?

    也很简单,其实这部分用后台来返回数据是最好的,我这呢。为了简便,用了一个配置文件。咱一起来看看。

https://img1.sycdn.imooc.com//5c52ea210001532b07980602.jpg

    歌名,歌的路径,歌词的路径,配置好就OK啦。再用跟我们之前歌词说的一样的方式,用模板引擎来渲染。

    那还有什么呢?歌曲的进度怎么实时的走呢?

    这个也不难。audio本身就给我们提供了一个很好用的东西。那就是:

    duration:歌曲总时长(以毫秒的形式)

    currentTime:当前歌曲播放焦点的时间。

    我们只需要做一个这两者的比例就OK啦。

    这里需要注意的就是因为时间是毫秒,而我们歌词啊,歌曲啊,显示的是我们常见的分钟:秒的形式,所以要做一个转化。

https://img1.sycdn.imooc.com//5c52eb0500018e1111070556.jpg

    那我能否实时的拖动进度条?更改歌曲的时间呢?

    当然可以的。

https://img1.sycdn.imooc.com//5c52eb720001908112250600.jpg

     到此呢?那些什么上一曲啊,下一曲啊,都是浮云。

    代码呢,都开源到github上了,就不贴到这了。

    




    

點(diǎn)擊查看更多內(nèi)容
1人點(diǎn)贊

若覺得本文不錯(cuò),就分享一下吧!

評(píng)論

作者其他優(yōu)質(zhì)文章

正在加載中
感謝您的支持,我會(huì)繼續(xù)努力的~
掃碼打賞,你說多少就多少
贊賞金額會(huì)直接到老師賬戶
支付方式
打開微信掃一掃,即可進(jìn)行掃碼打賞哦
今天注冊(cè)有機(jī)會(huì)得

100積分直接送

付費(fèi)專欄免費(fèi)學(xué)

大額優(yōu)惠券免費(fèi)領(lǐng)

立即參與 放棄機(jī)會(huì)
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)

舉報(bào)

0/150
提交
取消