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 相关文章推荐
prototype 中文参数乱码解决方案
Nov 09 Javascript
JavaScript使用RegExp进行正则匹配的方法
Jul 11 Javascript
window.onerror()的用法与实例分析
Jan 27 Javascript
浅谈jquery中next与siblings的区别
Oct 27 Javascript
vue 和vue-touch 实现移动端左右导航效果(仿京东移动站导航)
Apr 22 Javascript
VueJs单页应用实现微信网页授权及微信分享功能示例
Jul 26 Javascript
vue iView 上传组件之手动上传功能
Mar 16 Javascript
vue使用better-scroll实现下拉刷新、上拉加载
Nov 23 Javascript
PHP实现基于Redis的MessageQueue队列封装操作示例
Feb 02 Javascript
详解微信小程序缓存--缓存时效性
May 02 Javascript
layui之数据表格--与后台交互获取数据的方法
Sep 29 Javascript
Vue实现指令式动态追加小球动画组件的步骤
Dec 18 Vue.js
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
解决PhpMyAdmin中导入2M以上大文件限制的方法分享
2014/06/06 PHP
CodeIgniter中使用cookie的三种方式详解
2014/07/18 PHP
Yii净化器CHtmlPurifier用法示例(过滤不良代码)
2016/07/15 PHP
php版微信公众平台开发之验证步骤实例详解
2016/09/23 PHP
TP5(thinkPHP5)框架使用ajax实现与后台数据交互的方法小结
2020/02/10 PHP
javascript中的对象和数组的应用技巧
2007/01/07 Javascript
javascript Window及document对象详细整理
2011/01/12 Javascript
Jquery 数据选择插件Pickerbox使用介绍
2012/08/24 Javascript
表格单元格交错着色实现思路及代码
2013/04/01 Javascript
Javascript中 关于prototype属性实现继承的原理图
2013/04/16 Javascript
客户端js判断文件类型和文件大小即限制上传大小
2013/11/20 Javascript
JavaScript获得页面base标签中url的方法
2015/04/03 Javascript
jquery实现左右滑动菜单效果代码
2015/08/27 Javascript
JavaScript实现弹出广告功能
2017/03/30 Javascript
docker中编译nodejs并使用nginx启动
2017/06/23 NodeJs
Node.js利用js-xlsx处理Excel文件的方法详解
2017/07/05 Javascript
Easy UI动态树点击文字实现展开关闭功能
2017/09/30 Javascript
vue实现网络图片瀑布流 + 下拉刷新 + 上拉加载更多(步骤详解)
2020/01/14 Javascript
Python数据库的连接实现方法与注意事项
2016/02/27 Python
Django实现组合搜索的方法示例
2018/01/23 Python
python3 打开外部程序及关闭的示例
2018/11/06 Python
Python字符串通过'+'和join函数拼接新字符串的性能测试比较
2019/03/05 Python
从列表或字典创建Pandas的DataFrame对象的方法
2019/07/06 Python
python字符串替换re.sub()方法解析
2019/09/18 Python
python生成器用法实例详解
2019/11/22 Python
Python作用域与名字空间原理详解
2020/03/21 Python
Python3标准库之threading进程中管理并发操作方法
2020/03/30 Python
jupyter notebook 恢复误删单元格或者历史代码的实现
2020/04/17 Python
银河香水:Galaxy Perfume
2019/03/25 全球购物
金融专业推荐信
2013/11/14 职场文书
青年标兵事迹材料
2014/08/16 职场文书
工作骂脏话检讨书
2014/10/05 职场文书
四风问题个人剖析材料
2014/10/07 职场文书
教师岗位职责
2015/02/03 职场文书
2015年高中班主任工作总结
2015/04/30 职场文书
Go gorilla/sessions库安装使用
2022/08/14 Golang