前端小白之用html+css+javascript实现音乐播放

效果图

1.css3所用到知识

box-size:当设置边框后如果宽度增大  则可设置border-size属性即可自适应

background-size:即为设置了背景图片后对图片大小切割的新属性

    cover:即为将图片以左上角为起点  选择不拉伸的方式部分填充当前盒子的大小

    contain:即为以图片最上面一边 选择拉伸的方式将整个图片填充盒子的大小

    100% 100%:即以图片左上角和右下角对整个图片进行拉伸 使整个图片填充盒子的大小

animation:动画属性  使用格式:名称   做一圈时间   匀速运动(leader) 循环播放infinite

2.所有到的html5的知识点

audio标签:音频标签


3.原生js知识点

对于audio标签当按钮被触发时 可使用play()方法

判断第一次点击跟第二次点击按钮的状态  可定义onOff=true;

当第一次点击(true)时播放音乐  第二次点击(false)时暂停音乐

分割歌词与歌词时间 用split()方法进行多次分割 注意:为了防止有空的字符串 所以必须做一个判断判断是否有  可选择if()的默认判断  在if语句里给每一句歌词添加p标签 并将分割出来的时间赋给每一句歌词的id

监听音频播放进度事件 音频.addEventListener("timeupdate",function(){});

在回调函数里获取当前播放的时间this.currentTime 并将其转换为整数Parseint

用if语句判断以当前的时间为id是否存在 存在的话 将与之对应的p标签添加属性(在此之前先清空属性)

为了歌词的可视区域 可当aP[n+11].id==cur时内容盒子上移  判断是为了防止监听时重复出现的时间

当aP[0].id==0时 n++ 第二次aP[1]!=0盒子不会上移  上移时top值必须累加*10


最后监听歌曲是否结束事件  结束时不再转动  内容高度top等于0 onOff=true  当前播放进度为0;

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 学会使用CSS选择器熟记CSS样式和外观属性熟练掌握CSS各种选择器熟练掌握CSS各种选择器熟练掌握CSS三种显示...
    七彩小鹿阅读 6,346评论 2 66
  • 一、CSS入门 1、css选择器 选择器的作用是“用于确定(选定)要进行样式设定的标签(元素)”。 有若干种形式的...
    宠辱不惊丶岁月静好阅读 1,634评论 0 6
  • 1、通过CocoaPods安装项目名称项目信息 AFNetworking网络请求组件 FMDB本地数据库组件 SD...
    阳明AGI阅读 16,019评论 3 119
  • 人生来去匆匆 匆匆又匆匆 缘来又缘去 我,匆匆又匆匆成来客 你,匆匆又匆匆当过客 匆匆又匆匆 缘去又缘来 你,匆匆...
    Demi琳阅读 181评论 0 0
  • 我曾经相信过一些什么,那大约是在我童年的时候,后来这一切都被毁了,我们成了一群还没学会学会相信,先学会了怀疑...
    夏季free阅读 229评论 0 1