美文网首页
Hunger Music 项目介绍

Hunger Music 项目介绍

作者: 饥人谷1904_陈俊锋 | 来源:发表于2019-08-14 12:55 被阅读0次

标题:

Hunger FM 项目

功能介绍:

** Hunger FM是一个Web的电台(专辑)音乐播放器 **

  • 滑动专辑栏
  1. 点击图片选择专辑
  2. 位于下方的专辑栏轮播滑动效果
  • 音乐播放控制显示
  1. 选择专辑后自动播放并加载歌曲图片
    2.音乐播放器基本功能(播放暂停、下一曲、进度显示)
  2. 点击进度能够调整歌曲进度
  3. 实现了歌词同步播放功能

技术细节介绍:

  • 响应式布局
  1. 高度撑满,对页面进行单位换算 使用单位 vh 实现自动等比的缩放(即使不同屏高度不同,同样撑满,然后其他因为使用vh自动等比缩放)
  2. 宽度加了一点响应式
  • JS功能组合与分离
  1. JS文件主要编写了 专辑栏功能函数对象footer 和 播放器功能函数对象Main,二者实现各自功能,耦合程度极低;
  2. 封装了一个时间发布订阅函数对象EventCenter(事件中心),使专辑栏和播放器之间产生关联,专辑栏footer只负责监听用户的频道选择,通过EventCenter.fire发布相关专辑被选择消息;Main只通过EventCenter.on订阅监听EventCenter.fire发布的相关消息,并做出相应的响应。
  • 歌词的同步加载以及动画展示
  1. 实现了一个jQuery插件$.fn.slipText,引用了animate.css,对歌词进行了动画效果的包装;
  2. 获取到当前播放歌曲的歌词数据并进行分隔处理(提取歌词时间部分)之后生成lyricObj对象,对象中的键是时间,值是时间对应的歌词
  3. 用音乐播放时的时间跟歌词对象中的键进行配对,实现同步展示歌词,并调用jQuery插件进行歌词的酷炫展示

遇到的问题

  1. 从服务器获取数据受限:需在head里加上<meta name="referrer" content="never">
  2. 菜单栏切换点击过快会出错:添加一个状态属性this.isAnimate执行切换前先判断是否正在切换滑动菜单栏,如果是则return掉,如果不是则执行切换并且把状态属性this.isAnimate设置为ture,执行完切换之后再设置为false,避免过快点击菜单栏切换导致出错
  3. 改变窗口大小之后,菜单栏滑动长度不匹配出错:监听窗口大小改变事件window.onresize,当窗口大小改变时,对一些关键参数进行更新,比如:专辑容器 ul 的width,避免判断是否到达开始和结尾的判断式出错

项目收获

  • 初步认识并熟悉了响应式布局的编写
  • 对JS 的函数封装、模块化、功能分离、代码复用和设计模式等概念有了进一步的了解
  • 进一步熟悉了静态页面和JS 文件的代码编写

技术栈关键字

  • jQuery
  • CSS3 动画
  • 响应式布局
  • JSONP

相关文章

  • Hunger Music 项目介绍

    标题: Hunger FM 项目 功能介绍: ** Hunger FM是一个Web的电台(专辑)音乐播放器 ** ...

  • Hunger Music

    大屏适配的分类音乐页面 针对高度撑满,对页面进行单位换算 使用单位 vh 实现自动等比的缩放(即使不同屏高度不同,...

  • hunger

    你说的话我都无法反驳,我不能说你曾有那些过错,我默默认错,我笑脸哄好你,你说你腿疼,走不动,我不能说我膝盖像是砸过...

  • Hunger

    终于找到情绪波动的两大元凶: 1、外界输入经由个人解读引发内心的无价值感; 2、完全源自身体最深处的匮乏感。可能是...

  • Hunger

    记得去年有段时间看一档美国的烹饪节目MasterChef,来自各州的选手进行PK,在有限的时间里根据有限的食材进行...

  • 【有趣的功能】YT Music的关注推荐

    产品介绍 【产品】YT Music (Youtube Music)【版本】2.61.50【系统】Android 功...

  • music项目心得

    1.vue项目中生产打包,npm run build,生成在dist(可配置)目录下,主要build.js。最后生...

  • vue中数据交互和传参方式

    一、介绍 通过vue-music-app项目,初步熟悉vue中的数据交互和传参方式,此项目中使用到了vuex,vu...

  • 音乐游戏 Harmonix Music VR 增加新世界

    之前听到 Harmonix Music Systems 的消息还是官方在介绍 Harmonix Music VR ...

  • 德语表达:Essen

    Jetzt haben wir Hunger.我们好饿啊。Ich habe Hunger/Durst.我饿了/渴了...

网友评论

      本文标题:Hunger Music 项目介绍

      本文链接:https://www.haomeiwen.com/subject/qirgjctx.html