js实现简单音乐播放器


Posted in Javascript onJune 30, 2020

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

效果图:

js实现简单音乐播放器

可播放暂停继续播放,进度条可拖动,时间展示,声音调节

完整代码(直接拿来用)

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>audio功能开发</title>
 <style>
 * {
   margin:0;
   padding:0
 }
 .music-range {
   width:350px;
   height:10px;
   background:#2386e4;
   border-radius:5px;
   -webkit-appearance:none;
   margin:0 auto;
   cursor:pointer
 }
 .music-range::-webkit-slider-thumb {
   width:15px;
   height:15px;
   background:#fff;
   border:1px solid #f18900;
   cursor:pointer;
   border-radius:5px;
   -webkit-appearance:none
 }
 a {
   text-align:center
 }
 
 </style>
</head>
<body>
 <div class="music-all">
 <audio class='music-audio' controls>
  <source src="http://www.jq22.com/demo/jqueryaudio201903252328/jq22.mp3" type="audio/mpeg">
 </audio>
 <div>总时间 
  <span class='music-max'></span>
 </div>
 <div>时间 
  <span class='music-cur'></span>
 </div>
 <input class='music-range' type="range" min=0 max=100 value=0 />
 <div>音量<span class="music-voice">1</span></div>
 <button class='music-play'>播放</button>
 <button class='music-no'>停止</button>
 <button class="music-btnd">声小</button>
 <button class="music-btne">声大</button>
 <div class="music-animation"><span class="music-span"></span></div>
 
 <div class="music-list"></div>
 </div>
 <script src="js/jquery-1.10.2.js"></script>
 <script src="js/audio.js" type="text/javascript" charset="utf-8"></script>
 <script>
 var audios = document.getElementsByClassName("music-audio")[0];
var vol = audios.volume;
audios.controls = false;
$('.music-play').on('click', function () {
  audios.play();
  var duration = audios.duration;
  $('.music-max').html(timeleng(duration));
  $(".music-animation").addClass("play-an");
  $(".music-range").attr({
    'max': duration
  });
 
  function timer() {
    var t = parseInt(Math.round(audios.currentTime));
    $(".music-range").val(t);
    $('.music-cur').text(timeleng(t));
    t = parseInt(audios.currentTime);
    if (t < duration) {
      setTimeout(timer, 1000);
    } else {
      clearTimeout(timer);
    }
  }
  timer();
});
$('.music-no').on('click', function () {
  audios.pause();
  $(".music-animation").removeClass("play-an");
})
 
 
audios.onended = function () {
  $(".music-animation").removeClass("play-an")
};
$('.music-btnd').click(function () {
  vol = vol > 0 ? (vol * 10 - 1) / 10 : 0;
  audios.volume = vol;
  console.log(vol)
  $(".music-voice").html(vol)
})
$('.music-btne').click(function () {
  vol = vol < 1 ? (vol * 10 + 1) / 10 : 1;
  audios.volume = vol;
  console.log(vol)
  $(".music-voice").html(vol)
})
$(".music-range").on('change', function () {
  audios.currentTime = this.value;
  console.log(this.value)
  $(".music-range").val(this.value);
});
 
function timeleng(time) {
  var m = 0,
    s = 0,
    ms = '00',
    ss = '00';
  time = Math.floor(time % 3600);
  m = Math.floor(time / 60);
  s = Math.floor(time % 60);
  ss = s < 10 ? '0' + s : s + '';
  ms = m < 10 ? '0' + m : m + '';
  return ms + ":" + ss;
}
$(".music-qd").on("click", function () {
  var nameid = $(".input-text").val();
  console.log(nameid)
  $.ajax({
    type: "get",
    dataType: 'jsonp',
    success: function (d) {
      console.log(d)
    },
    error: function (d) {
      console.log(d);
    }
  });
})
 </script>
</body>
</html>

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

Javascript 相关文章推荐
一个可以兼容IE FF的加为首页与加入收藏实现代码
Nov 02 Javascript
jQuery 锚点跳转滚动条平滑滚动一句话代码
Apr 30 Javascript
js判断是否为数组的函数: isArray()
Oct 30 Javascript
jquery ajax jsonp跨域调用实例代码
Dec 11 Javascript
jQuery 全选 全部选 反选 实现代码
Aug 17 Javascript
livereload工具实现前端可视化开发【推荐】
Dec 23 Javascript
为什么我们要做三份 Webpack 配置文件
Sep 18 Javascript
Angularjs渲染的 using 指令的星级评分系统示例
Nov 09 Javascript
浅谈Vue 数据响应式原理
May 07 Javascript
深入浅析Vue中的 computed 和 watch
Jun 06 Javascript
JS实现查找数组中对象的属性值是否存在示例
May 24 Javascript
vue输入节流,避免实时请求接口的实例代码
Oct 30 Javascript
angular中的post请求处理示例详解
Jun 30 #Javascript
vue开发简单上传图片功能
Jun 30 #Javascript
jquery实现上传图片功能
Jun 29 #jQuery
vue实现图片上传到后台
Jun 29 #Javascript
JS判断数组四种实现方法详解
Jun 29 #Javascript
vue实现整屏滚动切换
Jun 29 #Javascript
vue实现页面切换滑动效果
Jun 29 #Javascript
You might like
JS 网站性能优化笔记
2011/05/24 PHP
php除数取整示例
2014/04/24 PHP
php使用pdo连接报错Connection failed SQLSTATE的解决方法
2014/12/15 PHP
symfony表单与页面实现技巧
2015/01/26 PHP
PHP缓冲区用法总结
2016/02/14 PHP
PDO::_construct讲解
2019/01/27 PHP
php判断数组是否为空的实例方法
2020/05/10 PHP
jquery 必填项判断表单是否为空的方法
2008/09/14 Javascript
javascript小数计算出现近似值的解决办法
2010/02/06 Javascript
javascript取消文本选定的实现代码
2010/11/14 Javascript
javascript+xml实现简单图片轮换(只支持IE)
2012/12/23 Javascript
javascript实现类似于新浪微博搜索框弹出效果的方法
2015/07/27 Javascript
vue接入腾讯防水墙代码
2019/05/07 Javascript
vue动态注册组件实例代码详解
2019/05/30 Javascript
jQuery实现html可联动的百分比进度条
2020/03/26 jQuery
html-webpack-plugin修改页面的title的方法
2020/06/18 Javascript
[32:17]完美世界DOTA2联赛循环赛LBZS vs Forest第二场 10月30日
2020/10/31 DOTA
Python实现合并字典的方法
2015/07/07 Python
Django权限机制实现代码详解
2018/02/05 Python
python计算日期之间的放假日期
2018/06/05 Python
python如何实现一个刷网页小程序
2018/11/27 Python
python读取目录下最新的文件夹方法
2018/12/24 Python
python应用Axes3D绘图(批量梯度下降算法)
2020/03/25 Python
使用Pycharm在运行过程中,查看每个变量的操作(show variables)
2020/06/08 Python
css3动画效果抖动解决方法
2018/09/03 HTML / CSS
.net开发工程师面试题
2014/02/25 面试题
毕业生造价工程师求职信
2013/10/17 职场文书
机械电子工程毕业生自荐信
2013/11/23 职场文书
机关门卫制度
2014/02/01 职场文书
小学五年级学生评语
2014/04/22 职场文书
走群众路线学习心得体会
2014/10/31 职场文书
2014年学校卫生工作总结
2014/11/20 职场文书
刑事上诉状(量刑过重)
2015/05/23 职场文书
2016年度继续教育学习心得体会
2016/01/19 职场文书
公司年会晚会开幕词
2019/04/02 职场文书
Django使用echarts进行可视化展示的实践
2021/06/10 Python