HTML5 audio标签使用js进行播放控制实例


Posted in HTML / CSS onApril 24, 2015

<audio>标签可以在HTML5浏览器中播放音频文件。

<audio>默认提供一个控制面板,但是有些时候我们只需要播放声音,控制面板由我们自己来定义其显示的状态。

这里我们可以使用JS来进行控制,代码如下:

复制代码
代码如下:

var audio ;
window.onload = function(){
initAudio();
}
var initAudio = function(){
//audio = document.createElement("audio")
//audio.src='Never Say Good Bye.ogg'
audio = document.getElementById('audio');
}
function getCurrentTime(id){
alert(parseInt(audio.currentTime) + ':秒');
}

function playOrPaused(id,obj){
if(audio.paused){
audio.play();
obj.innerHTML='暂停';
return;
}
audio.pause();
obj.innerHTML='播放';
}

function hideOrShowControls(id,obj){
if(audio.controls){
audio.removeAttribute('controls');
obj.innerHTML = '显示控制框'
return;
}
audio.controls = 'controls';
obj.innerHTML = '隐藏控制框'
return;
}
function vol(id,type , obj){
if(type == 'up'){
var volume = audio.volume + 0.1;
if(volume >=1 ){
volume = 1 ;

}
audio.volume = volume;
}else if(type == 'down'){
var volume = audio.volume - 0.1;
if(volume <=0 ){
volume = 0 ;
}
audio.volume = volume;
}
document.getElementById('nowVol').innerHTML = returnFloat1(audio.volume);
}
function muted(id,obj){
if(audio.muted){
audio.muted = false;
obj.innerHTML = '开启静音';
}else{
audio.muted = true;
obj.innerHTML = '关闭静音';
}
}
//保留一位小数点

function returnFloat1(value) {
value = Math.round(parseFloat(value) * 10) / 10;
if (value.toString().indexOf(".") < 0){
value = value.toString() + ".0";
}
return value;
}


调用方式如下:

复制代码
代码如下:

<a href="javascript:void(0);" onclick="getCurrentTime('firefox');">获取播放时间</a>
<a href="javascript:void(0);" onclick="playOrPaused('firefox',this);">播放</a>
<a href="javascript:void(0);" onclick="hideOrShowControls('firefox',this);">隐藏控制框</a>
<a href="javascript:void(0);" onclick="muted('firefox',this);">开启静音</a>
<input type="button" value="+" id="upVol" onclick="vol('firefox' , 'up' , this )"/>音量<input type="button" value="-" onclick="vol('firefox' , 'down' ,this )"/>
<audio src="/images/audio/Never Say Good Bye.ogg" id="audio" controls="controls" ></audio>

当前音量:<span id = "nowVol"> - </span>

HTML / CSS 相关文章推荐
使用 css3 transform 属性来变换背景图的方法
May 07 HTML / CSS
一款利用纯css3实现的360度翻转按钮的实例教程
Nov 05 HTML / CSS
css3实现的多级渐变下拉菜单导航效果代码
Aug 31 HTML / CSS
HTML5+CSS3实现无插件拖拽上传图片(支持预览与批量)
Jan 05 HTML / CSS
canvas三角函数模拟水波效果的示例代码
Jul 03 HTML / CSS
移动端解决悬浮层(悬浮header、footer)会遮挡住内容的3种方法
Mar 27 HTML / CSS
HTML5触摸事件实现移动端简易进度条的实现方法
May 04 HTML / CSS
解决HTML5中的audio在手机端和微信端的不能自动播放问题
Nov 04 HTML / CSS
html5默认气泡修改的代码详解
Mar 13 HTML / CSS
Html5 canvas画图白板踩坑
Jun 01 HTML / CSS
清除canvas画布内容(点擦除+线擦除)
Aug 12 HTML / CSS
amazeui树节点自动展开折叠面板并选中第一个树节点的实现
Aug 24 HTML / CSS
HTML5全屏(Fullscreen)API详细介绍
Apr 24 #HTML / CSS
HTML5 video播放器全屏(fullScreen)方法实例
Apr 24 #HTML / CSS
HTML5 video标签(播放器)学习笔记(二):播放控制
Apr 24 #HTML / CSS
HTML5 video标签(播放器)学习笔记(一):使用入门
Apr 24 #HTML / CSS
HTML5 Video标签的属性、方法和事件汇总介绍
Apr 24 #HTML / CSS
HTML5 Canvas中绘制椭圆的4种方法
Apr 24 #HTML / CSS
HTML5 Convas APIs方法详解
Apr 24 #HTML / CSS
You might like
如何让thinkphp在模型中自动完成session赋值小教程
2014/09/05 PHP
微信封装的调用微信签名包的类库
2017/06/08 PHP
PHP数据分析引擎计算余弦相似度算法示例
2017/08/08 PHP
PHP简单实现二维数组赋值与遍历功能示例
2017/10/19 PHP
php curl简单采集图片生成base64编码(并附curl函数参数说明)
2019/02/15 PHP
RR vs IO BO3 第一场2.13
2021/03/10 DOTA
28个JS验证函数收集
2010/03/02 Javascript
js function定义函数使用心得
2010/04/15 Javascript
IE6不能修改NAME问题的解决方法
2010/09/03 Javascript
解析页面加载与js函数的执行 onload or ready
2013/12/12 Javascript
jQuery实现响应浏览器缩放大小并改变背景颜色
2014/10/31 Javascript
使用npm发布Node.JS程序包教程
2015/03/02 Javascript
谈谈impress.js初步理解
2015/09/09 Javascript
详解JavaScript的回调函数
2015/11/20 Javascript
解决AngualrJS页面刷新导致异常显示问题
2017/04/20 Javascript
微信小程序实现时间预约功能
2018/11/27 Javascript
[48:23]DOTA2上海特级锦标赛主赛事日 - 4 败者组第四轮#1COL VS EG第一局
2016/03/05 DOTA
深入解析Python中的上下文管理器
2016/06/28 Python
Python使用plotly绘制数据图表的方法
2017/07/18 Python
分享一下如何编写高效且优雅的 Python 代码
2017/09/07 Python
Python程序退出方式小结
2017/12/09 Python
Python正则表达式和元字符详解
2018/11/29 Python
python使用Qt界面以及逻辑实现方法
2019/07/10 Python
如何通过50行Python代码获取公众号全部文章
2019/07/12 Python
你不知道的5个HTML5新功能
2016/06/28 HTML / CSS
Zavvi荷兰:英国大型音像制品和图书游戏零售商
2018/03/22 全球购物
Strawberrynet草莓网新加坡站:护肤、彩妆、香水及美发产品
2018/08/31 全球购物
Melissa鞋英国官方网站:Nonnon
2019/05/01 全球购物
LN-CC中国:高端男装和女装的奢侈时尚目的地
2019/09/14 全球购物
前厅收银主管岗位职责
2014/02/04 职场文书
抽样调查项目计划书
2014/04/24 职场文书
网络文明传播志愿者活动方案
2014/08/20 职场文书
高中运动会广播稿
2014/09/16 职场文书
亮剑观后感500字
2015/06/05 职场文书
运动会开幕式致辞
2015/07/29 职场文书
思品教学工作总结
2015/08/10 职场文书