Vue.js实现音乐播放器

 更新时间:2021年06月25日 10:22:56   作者:一个爱前端开发的小朋友  
这篇文章主要为大家详细介绍了Vue.js实现音乐播放器,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

本文实例为大家分享了Vue.js实现音乐播放器的具体代码,供大家参考,具体内容如下

目录如下:

运行效果如图所示:

代码如下:

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8" />
  <title></title>
  <script src="js/vue.js" type="text/javascript" charset="utf-8"></script>
  <style type="text/css">
   * {
    margin: 0;
    padding: ;
   }
   ul {
    list-style: none;
   }
   ul li {
    margin: 20px;
    padding: 10px 5px;
    border-radius: 3px;
   }
   ul li.active {
    background-color: aqua;
   }
      #control {
    width: 100%;
    height:80px;
   }
   .next,.before {
    width: 100px;
    height: 80px;
    background-color: aqua;
 
   }
   h1 {
       color: red
   }
   
  </style>
 </head>
 <body>
    <div id="app">
   
     <audio :src="currentSrc" controls="controls" autoplay="autoplay" @ended="changEnd"></audio>
       <h1>不仅仅是代码的搬运工</h1>
      <ul>
       <li :class='{active:index === currentIndex}' v-for='(item,index) in musicData' :key="item.id" @click="changeSong(item.songSrc,index)">
     <h2>{{item.id }}---歌名:{{item.name}}----{{item.author}}</h2>
    </li>
      </ul>
   <div id="control">
    <button  class="before" type="button" @click="beforeSong" >上一首</button>
    <button  class="next" type="button" @click="nextSong" >下一首</button>
   </div>
   
     
    </div>
    <script type="text/javascript">
     const musicData = [{
          id: 1,
    name: '喜欢你',
    author: '陈洁仪',
    songSrc: './status/陈洁仪 - 喜欢你.mp3'
     },
     {
      id: 2,
      name: '我又想你了',
      author: '小鹅',
      songSrc: './status/小鹅 - 我又想你了.mp3'
     }
     ];
     var app = new Vue({
      el: '#app',
      data: {
       musicData,
       currentIndex: 0,
       currentSrc: './status/小鹅 - 我又想你了.mp3'
      },
      methods: {
       changeSong (src,index) {
        this.currentSrc = src;
        this.currentIndex = index;
       },
       changEnd () {
       this.currentIndex++;
       if(this.currentIndex===this.musicData.length){
      this.currentIndex = 0;
       }
       this.currentSrc = this.musicData[this.currentIndex].songSrc; 
       },
       nextSong () {
        this.currentIndex++;
        if(this.currentIndex===this.musicData.length){
          this.currentIndex = 0;
        }
         this.currentSrc = this.musicData[this.currentIndex].songSrc; 
        console.log(this.currentIndex)
       },
       beforeSong () {
        
        if(this.currentIndex===0){
         this.currentIndex=this.musicData.length; 
        }
         this.currentIndex--;
         this.currentSrc = this.musicData[this.currentIndex].songSrc; 
       }
       
       
      }
     })
    </script>
 </body>
</html>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • Vue.js+Layer表格数据绑定与实现更新的实例

    Vue.js+Layer表格数据绑定与实现更新的实例

    下面小编就为大家分享一篇Vue.js+Layer表格数据绑定与实现更新的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-03-03
  • vue实现动态列表尾部添加数据执行动画

    vue实现动态列表尾部添加数据执行动画

    这篇文章主要介绍了vue实现动态列表尾部添加数据执行动画方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-04-04
  • vue.js 解决v-model让select默认选中不生效的问题

    vue.js 解决v-model让select默认选中不生效的问题

    这篇文章主要介绍了vue.js 解决v-model让select默认选中不生效的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-07-07
  • 详解vue 组件

    详解vue 组件

    这篇文章主要介绍了详解vue 组件的相关知识,文中讲解非常细致,代码供大家参考学习,感兴趣的朋友可以了解下
    2020-06-06
  • 详细聊聊vue组件是如何实现组件通讯的

    详细聊聊vue组件是如何实现组件通讯的

    组件间通信简单来说就是组件间进行数据传递,就像我们日常的打电话,就是通讯的一种方式,下面这篇文章主要给大家介绍了关于vue组件是如何实现组件通讯的相关资料,需要的朋友可以参考下
    2022-05-05
  • Vue分页组件的封装方法

    Vue分页组件的封装方法

    这篇文章主要为大家详细介绍了Vue分页组件的封装方法,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-07-07
  • Element el-date-picker 日期选择器的使用

    Element el-date-picker 日期选择器的使用

    本文主要介绍了Element el-date-picker 日期选择器的使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-04-04
  • Vue 组件上的v-model双向绑定原理解析

    Vue 组件上的v-model双向绑定原理解析

    这篇文章主要介绍了Vue 组件上的v-model双向绑定原理,从本文的学习可以知道组件上v-model指令的本质也是生成了value属性和input事件,具体实例代码跟随小编一起看看吧
    2022-05-05
  • 在vue项目中使用axios发送post请求出现400错误的解决

    在vue项目中使用axios发送post请求出现400错误的解决

    这篇文章主要介绍了在vue项目中使用axios发送post请求出现400错误的解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-09-09
  • 在vue中使用rules对表单字段进行验证方式

    在vue中使用rules对表单字段进行验证方式

    这篇文章主要介绍了在vue中使用rules对表单字段进行验证方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-06-06

最新评论