audio播放进度(测试)
<style type="text/css">#jindu {
position: relative;
width: 200px;
font-size: 10px;
height: 20px;
line-height: 20px;
border: 1px solid olive;
text-align: center;
}
#jd-go {
background: olive;
width: 0px;
height: 20px;
opacity: 0.5;
position: absolute;
left: 0; top: 0;
}
</style>
<div id="au-tips">音乐准备中 ...</div>
<div id="jindu">
<span id="per">0%</span>
<div id="jd-go"></div>
</div>
<script language="javascript">
var mjd = document.getElementById('jindu');
var numPer = document.getElementById('per');
var tips = document.getElementById('au-tips');
var jdGo = document.getElementById('jd-go');
var aud = document.createElement('audio');
aud.src ="http://www.kumeiwp.com/sub/filestores/2022/01/19/56c620abaa9b109f11be4dcda66f4844.mp3";
aud.addEventListener('canplaythrough', function() {tips.innerHTML = "音乐准备就绪";}, false);
aud.addEventListener('ended', mPause, true);
aud.addEventListener('timeupdate', tmMsg, true);
aud.play();
function tmMsg(){
var jd = (100*aud.currentTime)/aud.duration;
numPer.innerHTML = Math.ceil(jd) + "%";
jdGo.style.width = jd+ "%";
}
function mPause() {
tips.innerHTML = aud.paused? "paused" : "play";
}
</script>
一楼仅简单测试一下播放进度,未提供齐全的播放控制 进度条就是这么来的吧{:4_187:} 黑黑玩的都是高技术的东东{:4_173:} 红影 发表于 2022-2-4 22:02
进度条就是这么来的吧
audio作为web页使用的控件,它有若干个接口,这些接口JS可以监听,通过监听,能拿到:
[*]音乐总时长(毫秒)
[*]当前播放的毫秒数
有这两个已知数,播放的百分比可以计算,这样,例中再结合CSS来操纵一个div的宽度,模拟出进度条。
红影 发表于 2022-2-4 22:03
黑黑玩的都是高技术的东东
以前用vb和Delphi做过MP3播放器,懂得原理 马黑黑 发表于 2022-2-4 23:08
audio作为web页使用的控件,它有若干个接口,这些接口JS可以监听,通过监听,能拿到:
[*]音乐总时长 ...
可以拿到这两个数值啊,这太牛了。看你是化成百分比了,化成时分秒也可以的吧。 马黑黑 发表于 2022-2-4 23:08
以前用vb和Delphi做过MP3播放器,懂得原理
厉害。你说的两个软件我都不会,那些原理就更不知道了{:4_204:} 红影 发表于 2022-2-5 10:23
厉害。你说的两个软件我都不会,那些原理就更不知道了
这些软件都过时了 红影 发表于 2022-2-5 10:21
可以拿到这两个数值啊,这太牛了。看你是化成百分比了,化成时分秒也可以的吧。
都可以。一般转换成什么,看需要,并从实现机制最简化考虑 马黑黑 发表于 2022-2-5 15:57
这些软件都过时了
还好没学习过,否则会不会白学啊{:4_173:} 马黑黑 发表于 2022-2-5 15:58
都可以。一般转换成什么,看需要,并从实现机制最简化考虑
这个,觉得也特别神奇呢,我是说可以拿到的那两个数值。 红影 发表于 2022-2-5 19:44
这个,觉得也特别神奇呢,我是说可以拿到的那两个数值。
很多数值都可以拿的。这叫API,一种街口协议。像我们的电脑,有时候要装个驱动,比如声卡驱动,就是基于硬件的协议,你给我提供了协议,我的系统就按协议调用你应有的功能,声卡就能出声。而空间的API,是软对软的协议,有了这个协议,二次开发才成为可能。 马黑黑 发表于 2022-2-5 19:47
很多数值都可以拿的。这叫API,一种街口协议。像我们的电脑,有时候要装个驱动,比如声卡驱动,就是基于 ...
这些太高深了,影子现在还不懂{:5_102:} 红影 发表于 2022-2-5 20:45
这些太高深了,影子现在还不懂
接口,不是街口{:4_170:} 马黑黑 发表于 2022-2-5 20:57
接口,不是街口
哦哦,接口协议。
这个错字好玩{:4_173:} 学习学习,谢谢老黑。{:4_190:} 加林森 发表于 2022-2-6 17:51
学习学习,谢谢老黑。
{:4_190:} 马黑黑 发表于 2022-2-6 20:33
谢谢老黑。{:4_191:}
页:
[1]