音乐播放器,播放|暂停|滑块的功能

document.addEventListener('DOMContentLoaded', function loaded(event) {
var audio = document.getElementById("aud");
var Oplay = document.getElementById("play");
var Oimg = document.getElementById("Img"); var isProcess = 0; //记录是否触发进度条点按
/* var ProcessLine = document.getElementById("ProcessLine");*/
var time = {
current: document.getElementById("timenow"),
total: document.getElementById("timeall")
};
// 音频播放/暂停
var Onoff = false;
Oplay.onclick = function(){
if(!Onoff){
Oimg.src= 'images/collect/pause.png';
audio.play();
Onoff = true;
}else{
Oimg.src= 'images/collect/play.png';
audio.pause();
Onoff = false;
}
};
// 音频时间
audio.ontimeupdate = function() {
var minute = Math.floor(audio.currentTime/60);
var second = Math.floor(audio.currentTime - minute*60);
var Minute = Math.floor(audio.duration/60);
var Second = Math.floor(audio.duration - Minute*60);
var scale = audio.currentTime/audio.duration*100;
Process.style.width = scale + '%';
ProcessLine.style.left = scale + '%';
time.current.innerHTML =toTwo( minute)+':'+ toTwo(second);
time.total.innerHTML = toTwo(Minute)+':'+toTwo(Second);
};
function toTwo ( n ) {
return n < 10 ? '0' + n : '' + n;
} //封装移动
var ProcessLine = document.getElementById('ProcessLine');
var Process = document.getElementById("Process");
var Div1 = document.getElementById('allLine');
var iMaxLeft = Div1.offsetWidth - ProcessLine.offsetWidth;
drag(ProcessLine);
function drag(obj) {
obj.onmousedown = function(ev) {
var ev = ev || event;
var disX = ev.clientX - this.offsetLeft;
if ( obj.setCapture ) {
obj.setCapture();
} document.onmousemove = function(ev) {
var ev = ev || event;
var L = ev.clientX - disX;
if ( L < 0 ) {
L = 0;
} else if ( L > iMaxLeft ) {
L = iMaxLeft;
}
obj.style.left = L + 'px';
Process.style.width = L/iMaxLeft*100 + '%';
time.current.innerHTML =toTwo( minute)+':'+ toTwo(second);
} document.onmouseup = function() {
document.onmousemove = document.onmouseup = null;
//释放全局捕获 releaseCapture();
if ( obj.releaseCapture ) {
obj.releaseCapture();
}
}
return false; } } });

js-音乐播放器,播放|暂停|滑块的功能的更多相关文章

  1. 使用vlc播放器播放rtsp流视频

    可参考: 使用vlc播放器做rtsp服务器 web网页中使用vlc插件播放相机rtsp流视频 使用vlc进行二次开发做自己的播放器 首先需要安装vlc播放器,下载及安装步骤略 使用vlc播放器播放rt ...

  2. 【转】C# 视频监控系列(12):H264播放器——播放录像文件

    原文地址:http://www.cnblogs.com/over140/archive/2009/03/23/1419643.html?spm=5176.100239.blogcont51182.16 ...

  3. .net C# 网页播放器 支持多种格式 媒体播放器 播放器 代码

    .avi格式代码片断如下:<object id='video' width='400' height='200' border='0' classid='clsid:CFCDAA03-8BE4- ...

  4. 第十一篇、HTML5隐藏播放器播放背景音乐

    html5添加网页背景音乐  一个客户要求给网站添加一个背景音乐,我用的是html5添加网页背景音乐的代码,在此记录一下以后有用. html5方法一:<audio autoplay=" ...

  5. .NET MVC对接POLYV——HTML5播放器播放加密视频

    官方参考文档:http://dev.polyv.net/2017/videoproduct/v-playerapi/html5player/html5-docs/ 1.上传视频之前根据自己需要对所上传 ...

  6. EasyPlayer-RTSP-Android安卓播放器播放RTSP延迟优化策略,极低延时!

    EasyPlayer-RTSP-Android安卓RTSP播放器低延迟播放延时优化策略 EasyPlayer-RTSP-Android播放器是一款专门针对RTSP协议进行过优化的流媒体播放器,其中我们 ...

  7. flv网页播放器播放失败

    在IIS6.0上发布网站时,在路径正确的情况下,网页flv播放器还是无法播放flv视频的解决方法. 1.打开IIS6.0管理器,打开发布的网站,点击打开属性窗口. 2.在HTTP头选项里找到MIME类 ...

  8. java调用本地播放器播放视频文件。调用本地播放器不能播放指定文件的说明。

    public class OpenExe extends HttpServlet { //打开本地播放器并播放视频 public static void openExe(String file) { ...

  9. EasyPlayerPro Windows播放器本地快照抓拍截图功能实现方法

    背景描述 作为一个播放器,截图功能必不可少; 下面主要记录一下截图功能的实现: 实现流程 将解码后的帧进行格式转换(目标格式为RGB24); 采用独立的线程进行截图处理; 截图可保存为BMP或JPG两 ...

随机推荐

  1. Codeforces 839 B. Game of the Rows-贪心

    最近太zz了,老是忘记带脑子... 补的以前的cf,发现脑子不好使...   B. Game of the Rows   time limit per test 1 second memory lim ...

  2. 几何【P2313】 [HNOI2005]汤姆的游戏

    顾z 你没有发现两个字里的blog都不一样嘛 qwq 题目描述--->p2313 [HNOI]汤姆的游戏 分析 说不上是分析. 数据范围给出来,这题明显暴力啊emmm. 个人认为的坑点. 这题不 ...

  3. IO 输出 PrintStream和PrintWriter

    PrintStream和PrintWriter的autoflushing机制有点不同,前者在输出byte数组.调用println方法.输出换行符或者byte值10(即\n)时自动调用flush方法,后 ...

  4. Loj #6019. 「from CommonAnts」寻找 LCM

    给个链接:https://loj.ac/problem/6019 还是一道扩展卢卡斯+中国剩余定理....就当练练手 但是这题怎么这么卡常呢????!!!!! 在LOJ上死也过不去 (为什么要加那么多 ...

  5. Jquery表单验证插件validate

    写在前面: 在做一些添加功能的时候,表单的提交前的验证是必不可少的,jquery的validate插件就还可以,对于基本的需求已经够了.这里记录下基本的用法. 还是写个简单的demo吧 <htm ...

  6. Map集合-根据宠物昵称查找宠物

    package collection; /** * 宠物类 * @author * */ public class Pet { private String name; private String ...

  7. iOS_字典数组 按key分组和排序

    int main(int argc, const charchar * argv[]) { @autoreleasepool { // 1.定义一个测试的字典数组 NSMutableArray *di ...

  8. JSONUtil.bean2Json()报Property 'key' of class has no read method. SKIPPED的问题处理

    错误警告信息描述: net.sf.json.JSONObject.defaultBeanProcessing(JSONObject.java:) Property 'handler' of class ...

  9. 深入理解ES6里的promise

    一.ES6 Promise是什么? 复杂的概念先不讲,我们先简单粗暴地把Promise用一下,有个直观感受.那么第一个问题来了,Promise是什么呢?是一个类?对象?数组?函数? 别猜了,直接打印出 ...

  10. Angular 学习笔记——自定义指令

    <!DOCTYPE HTML> <html ng-app="myApp"> <head> <meta http-equiv="C ...